單企業登入流程
- 小程式端呼叫wx.qy.login 獲取微信返回的
code
- 小程式端呼叫後臺登入介面,傳入code
- 後臺根據企業
corpid
和secret
獲取access_token
,並快取下來,根據expires_in
過期 - 後臺根據前端傳入的
code
和access_token
呼叫code2Session - 拿到微信返回的userid後進行自己登入的處理
多企業登入流程
錯誤處理方式
拿相同的code
迴圈corpid
呼叫code2Session
,哪個能獲取到就中止迴圈。
實際效果
使用者企業不匹配的情況下這種處理方式會返回一個加密的userid,導致迴圈第一次就退出了。
解決方案
- 拿
code
和任意一個corpid
呼叫code2Session
,判斷返回的corpid
是否與入參中的corpid
相同,相同則登入成功,不同則返給小程式端,重新呼叫wx.qy.login獲取code - 拿重新登入獲取的
code
和第一次呼叫code2Session
返回的corpid
呼叫code2Session
程式碼片段
微信官方文件
本作品採用《CC 協議》,轉載必須註明作者和本文連結