下面這個鏈接為微信發起 OAuth 的跳轉地址
https://open.weixin.qq.com/connect/oauth2/authorize?appid=APPID&redirect_uri=REDIRECT_URI&response_type=code&scope=SCOPE&state=STATE#wechat_redirect
注意鏈接中有幾個變量需要替換
- APPID 測試賬號中的
appID
,填寫自己賬號的appID
- REDIRECT_URI 用戶同意授權后的回調地址,填寫
http://larabbs.test
- SCOPE 應用授權作用域,填寫
snsapi_userinfo
- STATE 隨機參數,可以不填,我們保持
STATE
即可。
替換后我們得到的鏈接類似
https://open.weixin.qq.com/connect/oauth2/authorize?appid=wxe0ba316xxxxxxx&redirect_uri=http://larabbs.test&response_type=code&scope=snsapi_userinfo&state=STATE#wechat_redirect
在開發者工具中,訪問該鏈接,可以看到微信授權頁面
點擊確認登錄
我們成功的跳轉回了 REDIRECT_URI
,注意 url 中可以看到 code 參數。好了我們已經完成了 OAuth 流程中獲取授權碼的步驟。
請求以下鏈接獲取 access_token:
https://api.weixin.qq.com/sns/oauth2/access_token?appid=APPID&secret=SECRET&code=CODE&grant_type=authorization_code
需要替換的變量
- APPID 測試賬號中的
appID
,填寫自己賬號的appID
- SECRET 測試賬號中的
secret
,填寫自己賬號的secret
- code 上一步獲取的 code
替換后的鏈接如下
https://api.weixin.qq.com/sns/oauth2/access_token?appid=wx353901f6xxxxx&secret=d4624c36b6795d1d99dxxxxxxxx&code=0813AoG21n9C2O1yfxH21t4nG213AoGH&grant_type=authorization_code
使用 PostMan 訪問該鏈接,獲取到了 access_token
,注意微信同時返回了 open_id
,微信 access_token
和 open_id
一起請求用戶信息。
通過 access_token
獲取個人信息
https://api.weixin.qq.com/sns/userinfo?access_token=ACCESS_TOKEN&openid=OPENID&lang=zh_CN
替換鏈接中的 ACCESS_TOKEN
和 OPENID
,使用 PostMan 訪問