在做微信公衆平台網頁授權時,發現每次請求授權連結
https://open.weixin.qq.com/connect/oauth2/authorize?appid=xxx&redirect_uri=xxx&response_type=code&scope=snsapi_userinfo&state=STATE#wechat_redirect
時都會重定向連結redirect_uri都會自動請求兩次,由于并發導緻了一些問題,
{"errcode":40001,"errmsg":"invalid credential, access_token is invalid or not latest, hints: [ req_id: PSp.LA0036s182 ]"}
也可能為
"errcode":40163,"errmsg":"codebeenused 微信受權錯誤:"errcode":40163,"errmsg":"codebeenused
那麼,為什麼會請求兩次呢?,調試時發現會通路兩次,一次是301,頁面重定向了,第二次跟第一次就也是相通的濾鏡進行重定向。因為重定向請求了兩次,是以會提示code已經被使用。沒有擷取oppenID,因為還沒綁定開放平台。加上後,不再報錯。code 可以了。
後來發現隻要加個屬性就不會有這個問題了。
https://open.weixin.qq.com/connect/oauth2/authorize?appid=xxx&redirect_uri=xxx&response_type=code&scope=snsapi_userinfo&state=STATE&connect_redirect=1#wechat_redirect
&connect_redirect=1 這個參數非常重要!!!!!!