心知天氣使用簽名驗證方式

2021-09-26 19:40:57 字數 2103 閱讀 6319

心知天氣文件:新增鏈結描述

php demo:

/**

* 心知天氣介面呼叫憑據

* */

$key

='yonpk9bc515xhgtp'

;// 測試用 key,請更換成您自己的 key

$uid

='u6f2205982'

;// 測試用 使用者 id,請更換成您自己的使用者 id

// 引數

$api

='';// 介面位址

$location

='深圳'

;// 城市名稱。除拼音外,還可以使用 v3 id、漢語等形式

// 生成簽名。文件:

// http_build_query 會自動進行 url 編碼

// 使用 hmac-sha1 方式,以 api 金鑰(key)對上一步生成的引數字串(raw)進行加密,然後 base64 編碼

$sig

=base64_encode

(hash_hmac

('sha1'

,$sig_data

,$key

,true))

;// 拼接 url 中的 get 引數。文件:

$param

['sig']=

$sig

;// 簽名

$param

['location']=

$location

;$param

['start']=

0;// 開始日期。0 = 今天天氣

$param

['days']=

1;// 查詢天數,1 = 只查一天

// 構造url

;// 除拼音外,還可以使用 v3 id、漢語等形式

$key

="4r9bergjetiv1tsd"

;// 測試用 key,請更換成您自己的 key

$uid

="u785b76fc9"

;// 測試用 使用者 id,請更換成您自己的使用者 id

// 獲取當前時間戳,並構造驗證引數字串

$keyname

="ts="

.time()

."&ttl=300&uid="

.$uid

;echo

"\n"

;echo

$keyname

;// 使用 hmac-sha1 方式,以 api 金鑰(key)對上一步生成的引數字串(raw)進行加密

$sig

=base64_encode

(hash_hmac

('sha1'

,$keyname

,$key

,true))

;echo

"\n"

;echo

$sig

;// 將上一步生成的加密結果用 base64 編碼,並做乙個 urlencode,得到簽名 sig

$signedkeyname

=$keyname

."&sig="

.urlencode

($sig);

// 最終構造出可由前端或服務端進行呼叫的 url

$url

="".$location

."&"

.$signedkeyname

;echo

"\n"

;echo

$url

;

使用 Openssl 驗證自簽名證書

ios的 security framework 框架前面已經介紹。這個框架提供有限的功能,使用它能做到的,比你想象的要少。筆者一直想找乙個 ios 下比較好的功能全面的安全演算法庫,結果卻一無所獲。不知道誰能介紹下這方面。最終還是只有求助於聞名已久的openssl library。openssl 確...

使用 Openssl 驗證自簽名證書

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!ios的 security framework 框架前面已經介紹。這個框架提供有限的功能,使用它能做到的,比你想象的要少。筆者一直想找乙個ios 下比較好的功能全面的安全演算法庫,結果卻一無所獲。不知道誰能介紹下這方面。最終還是只有求助於聞名已久的...

驗證器使用方式

以managerservice為例 建立乙個validate目錄下的class.php檔案,命名為manager 在managerservice類裡使用命名空間 在某個方法裡建立乙個驗證器物件 validate new managervalidate 設定需要判斷的引數key和引數名稱 執行檢查 傳...