微信oauth前后端分離實現
在前后端分離的基礎上,實現微信的oauth機制
如何獲取微信用戶信息
頁面如果需要獲取當前用戶信息,可以從四個途徑獲取,優先級分別為:
- redux 用戶信息
- localstorage 存放的用戶ID(openId)
- url 入參(openId)
- 使用微信的oauth機制從url的入參帶回openId
獲取用戶信息時序圖(非oauth)
以下流程只描述不需要微信授權時的調用時序
非oauth獲取用戶信息
獲取用戶信息時序圖(oauth)
當頁面無法從(redux、localstorage、url)識別用戶時,需要啟動微信授權機制,獲取并存儲用戶信息
微信網頁授權步驟
- 第一步:用戶同意授權,獲取code
- 第二步:通過code換取網頁授權access_token
- 第三步:刷新access_token(如果需要)
- 第四步:拉取用戶信息(需scope為 snsapi_userinfo)
oauth獲取用戶信息