<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                # 安全相關函數目錄 [TOC=2,3] * * * * * * * * * * * * * * * - ## 根據規則生成的LMS簽名算法 * * * * * >[info]#### 1.根據規則生成的LMS簽名算法【createSignature】 ~~~ $accessKey = '1IKQ0TRvvdYDwVFrZAPXMpHRFObbzq90'; $secretKey = 'IrGPklFuNa7a1XiinGS58dmAu4ZY75Gn'; /** * 根據規則生成的簽名算法 * @param: $params 數組參數(除Signature參數外的所有參數) * @return: return_type * @date: 2017年12月28日 上午10:14:44 * @author: ityangs<ityangs@163.com> */ private function createSignature($params){ ksort($params); $text = ''; foreach ($params as $k => $v) { if (empty($v)) { continue; } $text .= $k . $v; } //計算本地的簽名 return base64_encode(md5(utf8_encode($secretKey . $text . $secretKey))); } ~~~ >[info]#### 2. 測試 - #### 函數使用 ~~~ $data=array( 'username'=>'5555@qq.com', 'password'=>'1234567', ); createSignature($params); ~~~ * * * * * * * * * * * * * * * - ## 接口生成簽名算法 * * * * * >[info]#### 1.接口生成簽名算法【createSignature】 ~~~ /** * 生成簽名算法 * 算法: * 1. 將所有的業務參數(包括時間戳參數:timestamp)按字母先后順序排序 *2. 參數名稱和參數值拼接成一個字符串,為避免空字符串在傳輸過程中被轉換成 null 的影響,值為空的參數不參與拼接 *3. 在拼接的字符串前后都加上 secret_key 組成一個新的字符串 *4. 對字符串進行 utf8_encode,然后 md5,最后 base64_encode,得到簽名字符串。采用utf-8提前對參數進行編碼,可以減少客戶端編碼差異帶來的影響,因為服務端到時是統一采用utf-8來做的,最后進行BASE64編碼的原因是將摘要內容全部轉換為可顯字符,應對某些不可顯字符在網絡傳輸中的丟失。 * @param array $params * @return string */ protected function createSignature(array $params) { $text = ''; ksort($params); foreach ($params as $key => $value) { if (empty($value)) { continue; } $text .= $key . $value; } return base64_encode(md5(utf8_encode($this->secretKey . $text . $this->secretKey))); } ~~~ >[info]#### 2. 測試 - #### 函數使用 ~~~ $requestData = [ 'app_key' => $this->appKey, 'module' => $module ?: explode('.', $method, 2)[0], 'method' => $method, 'content' => json_encode($data), 'timestamp' => gmdate('Y-m-d H:i:s') ]; $signature = $this->createSignature($requestData); ~~~
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看