大家需要弄清楚微信的網頁授權token和公眾號api調用授權token。
1、網頁授權access_token
1、有效期:7200ms
2、微信網頁授權是通過OAuth2.0機制實現的,在用戶授權給公眾號后,公眾號可以獲取到一個網頁授權特有的接口調用憑證(網頁授權access_token),通過網頁授權access_token可以進行授權后接口調用,如獲取用戶基本信息;獲取用戶openid等。
3、獲取access_token接口地址:https://api.weixin.qq.com/sns/oauth2/access_token?appid=APPID&secret=SECRET&code=CODE&grant_type=authorization_code
(此接口需要code參數,一個code只能使用一次,該code由前端提供。)
4、通過該接口獲取用戶openid等基礎信息。
5、刷新token接口地址:
https://api.weixin.qq.com/sns/oauth2/refresh_token?appid=APPID&grant_type=refresh_token&refresh_token=REFRESH_TOKEN
該接口參數refresh_token為第3步獲取access_token的接口返回參數中的數據。
2、公眾平台API調用憑證access_token
1、有效期:7200ms
2、公眾號的全局唯一接口調用憑證。
存儲至少需要512個字符空間;
需定時刷新;
重復獲取將導致上次獲取的access_token失效。
3、獲取access_token接口的地址:
https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET
4、沒有刷新access_token的接口;
需要定時獲取;
如果過期需要重新調用第3步中的接口,並更新緩存。
3、獲取用戶的基本信息
1、通過網頁授權的access_token得到用戶的openid。
2、獲取用戶基本信息接口地址:
https://api.weixin.qq.com/cgi-bin/user/info?access_token=ACCESS_TOKEN&openid=OPENID
說明:該access_token為公眾平台api調用憑證access_token。
4、JS-SDK簽名
1、JS-SDK說明文檔地址:
https://developers.weixin.qq.com/doc/offiaccount/OA_Web_Apps/JS-SDK.html
2、jsapi_ticket是公眾號用於調用微信JS接口 臨時票據。
3、有效期:7200ms
需要做全局緩存。
4、獲取jsapi_ticket的接口地址:
https://api.weixin.qq.com/cgi-bin/ticket/getticket?access_token=ACCESS_TOKEN&type=jsapi
其中,access_token為公眾號API調用憑證。
5、使用jsapi_ticket生成JS-SDK權限驗證簽名。