關於微信獲取用戶信息,需要用到兩個token

微信開發的官方文檔實在是坑的雅痞,我是在查閱了許多博客之後才弄清楚,獲取用戶信息的token不是和openid通知書返回的按個,在這裏整理一下
官方文檔:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140842

首先第一步:用戶同意授權,獲取code
這一步不多贅述,主要講後面的兩個token問題.
請求格式爲 https://open.weixin.qq.com/connect/oauth2/authorize?appid=APPID&redirect_uri=REDIRECT_URI&response_type=code&scope=SCOPE&state=STATE#wechat_redirect
裏面的參數用真是參數代替即可,請求返回的參數爲code

第二步 獲取用戶的openid和token
請求格式:https://api.weixin.qq.com/sns/oauth2/access_token?appid=appid&secret=secret&code=code&grant_type=authorization_code
參數爲第一步請求會的的參數code,appid(公衆號唯一標識)和secret(公衆號的appsecret),請求成功之後會返回用戶的access_token和openid,這裏出現的access_token就是第一個token,我們爲了區別記爲token1.

第三步 獲取用戶第二個token
這一步之前需要先設置微信公衆號和微信商戶的調用地址和ip白名單,具體設置方法可百度一下
請求格式:https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=appid&secret=secret
這裏的參數appid和secret與第二部相同,請求成功後返回了access_token值,這裏的token記爲token2.

第三步 獲取用戶信息
請求格式:https://api.weixin.qq.com/cgi-bin/user/info?access_token=token2&openid=openId&lang=zh_CN'
這裏請求的時候參數access_token值就是第三步獲取到的token2,加上第二步獲取到的openid就OK
這樣就能正確的獲取到用戶信息了

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章