1. 程式人生 > >微信網頁授權access_token和普通access_token區別

微信網頁授權access_token和普通access_token區別

access_token是公眾號的全域性唯一介面呼叫憑據,公眾號呼叫各介面時都需要使用access_token。 注意:是所有介面都需要使用

兩者異同

  1. 有效期:兩者有效時間都是7200s。

  2. 使用範圍:通過網頁授權獲得的access_token,只能獲取到對應的微信使用者資訊,與微信使用者是一對一關係;而普通的access_token在有效期內可以使用,可以獲取所有使用者資訊。

  3. 次數限制:普通access_token每天獲取最多次數為2000次,而網頁授權的access_token獲取次數沒有限制。

如何利用普通access_token獲取使用者資訊

補充: 既然通過普通access_token可以獲取使用者資訊,那為什麼還要網頁授權access_token呢?

我的理解是:公眾號A想獲得受關注使用者B的資訊,一般來說,A提供一個標識(普通的access_token)給第三方公眾平臺,說明是自己而不是別的公眾號。B提供一個標識,用來標識自己(openid)。這樣公眾號A就可以獲取B使用者資訊了,但是若公眾號C也想獲取B資訊,而B未關注C。這樣很容易造成使用者B資訊的洩露,所以比較安全的做法是讓使用者B去決定是否給公眾號C許可權,來獲取自己的私密資訊。這個許可權就是網頁授權的access_token。  因此,通過普通access_token獲取使用者資訊時,如果使用者未關注,資訊獲取就為空。而網頁授權access_token的獲取,只要使用者許可,就可以獲得,不論使用者是否關注。

網頁授權access_token

微信網頁授權是通過OAuth2.0機制實現的,在使用者授權給公眾號後,公眾號可以獲取到一個網頁授權特有的介面呼叫憑證(網頁授權access_token),通過網頁授權access_token可以進行授權後接口呼叫,如獲取使用者基本資訊。

獲取方式

普通access_token

其他微信介面,需要通過基礎支援中的“獲取access_token”介面來獲取到的普通access_token呼叫。

獲取方式

引數說明:

引數 是否必須 說明
grant_type 獲取access_token填寫client_credential
appid 第三方使用者唯一憑證
secret 第三方使用者唯一憑證金鑰,即appsecret

返回引數:

引數 說明
access_token 獲取到的憑證
expires_in 憑證有效事件,單位:秒

返回引數:

引數 說明
access_token 獲取到的憑證
expires_in 憑證有效時間

利用普通access_token獲取使用者資訊

在關注者與公眾號產生資訊互動後,公眾號可獲得關注者(注意:用此種方法獲取使用者資訊,前提是使用者必須關注公眾號)的openid(加密後的微訊號,每個使用者對每個公眾號的openid是唯一的)。公眾號可通過本介面來根據openid獲取使用者基本資訊,包括暱稱、頭像、性別、所在城市、語言和關注時間。

引數說明:

引數 是否必須 說明
access_token 呼叫介面憑證
openid 普通使用者的標識,對當前公眾號唯一
lang 返回國家地區語言版本,zh_CN 簡體,zh_TW 繁體,en 英語

返回引數:

引數 說明
subscribe 使用者是否訂閱該公眾號標識,值為0時,代表此使用者沒有關注該公眾號,拉取不到其餘資訊。
openid 使用者的標識,對當前公眾號唯一
nickname 使用者的暱稱
sex 使用者的性別,值為1時是男性,值為2時是女性,值為0時是未知
city 使用者所在城市
country 使用者所在國家
province 使用者所在省份
language 使用者的語言,簡體中文為zh_CN
headimgurl 使用者頭像,最後一個數值代表正方形頭像大小(有0、46、64、96、132數值可選,0代表640*640正方形頭像),使用者沒有頭像時該項為空。若使用者更換頭像,原有頭像URL將失效。
subscribe_time 使用者關注時間,為時間戳。如果使用者曾多次關注,則取最後關注時間
unionid 只有在使用者將公眾號繫結到微信開放平臺帳號後,才會出現該欄位。
remark 公眾號運營者對粉絲的備註,公眾號運營者可在微信公眾平臺使用者管理介面對粉絲新增備註
groupid 使用者所在的分組ID(相容舊的使用者分組介面)
tagid_list 使用者被打上的標籤ID列表
subscribe_scene 返回使用者關注的渠道來源,ADD_SCENE_SEARCH 公眾號搜尋,ADD_SCENE_ACCOUNT_MIGRATION 公眾號遷移,ADD_SCENE_PROFILE_CARD 名片分享,ADD_SCENE_QR_CODE 掃描二維碼,ADD_SCENEPROFILE LINK 圖文頁內名稱點選,ADD_SCENE_PROFILE_ITEM 圖文頁右上角選單,ADD_SCENE_PAID 支付後關注,ADD_SCENE_OTHERS 其他
qr_scene 二維碼掃碼場景(開發者自定義)
qr_scene_str 二維碼掃碼場景描述(開發者自定義)