您好,登錄后才能下訂單哦!
在做微信網頁開發過程中,要使用微信的JSD接口,需要完成簽名效驗才行。但是很多人在簽名過程中會遇到各種各樣的問題,簡直心態爆炸,那要如何正確的完成接口的簽名呢?
首先,登錄微信公眾號后臺,設置js安全域名。
第二,要在頁面中引入微信的js-sdk。
第三步,通過config接口注入權限驗證配置。
參數當中,timestamp是一個時間戳字符串,可以直接在網上搜轉換工具,將某個時間轉換成時間戳,這個時間不一定是要當前的,只有是最近幾天的都行。nonceStr是隨機串,可以隨意填一個字符串,但要確保之后的字符串都是同一個。sinature是生成的簽名,這個簽名怎么生成呢?
這個要先獲取access_token、jsapi_ticket。
先獲取access_token,然后通過access_token獲取jsapi_ticket。不管是ccess_token還是jsapi_ticket,都有一個存活期,大約是7200秒,在存活期內,最好不好重復獲取,因為會造成混亂。可以用數據庫或者文件把獲取的ccess_token、jsapi_ticket保存下來,然后代碼規定在7200秒的某個時間內重新獲取,以免ccess_token、jsapi_ticket過期,獲取的時間最好是存活期結束前的5分鐘,也是6900秒左右。
獲取了jsapi_ticket后,通過請求接口返回signature也就是簽名。至于接口是哪個,可以找微信開發文檔,里面寫的很詳細。此接口需要的參數有:
計算簽名需要幾個參數:
1、noncestr(隨機字符串),與前端配置一致
2、有效的jsapi_ticket,
3、timestamp(時間戳), 與前端配置一致
4、url(當前網頁的URL,不包含#及其后面部分),注意在某些程序中url中的某些字符會被會轉化,造成后臺接收的url與頁面url不一致導致簽名無效。
生成了簽名后,在前端配置后,一般就可以了。
我的php網站:kq.dbmkq.com
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。