0411-39943997
工作時間:周一至周日 8:30-22:00
行業新聞
Industry News
40163 code been used, hints
標簽: code been used, hints 40163  訪問: 10162018-12-20

最近開發一個項目,有公眾號的,要求從公眾號的快捷菜單進入網站,然后實現自動登錄的功能。其實就是一個通過Code獲取OpenId的過程。以前做項目時,也用過。不過最近不知道為什么,總是提示code been used, hints: [ req_id: **************]的40163的錯誤 。

找度娘問了,才知道,原來是用已得到的Code連續請求了兩次,可是為什么會請求兩次呢。排查了半天,真是半天的時間,浪費呀,也做了不少的測試。在我的項目里我找到了一個原因:

點一下微信公眾號的快捷菜單,跳轉到網站頁面會請求兩次。 

比如說:一個快捷菜單為:網站首頁,它的鏈接為:http://www.home.com,把么你就會發現,這個首頁里會有兩次訪問。

這還不是奇怪的地方,更奇怪的是安卓系統和蘋果系統還不一樣。安卓請求兩次,蘋果請求一次

具體是什么原因我還是沒找到,只是發現了這樣的問題。

我是這樣解決的。

在第一次請求時,把得到的OpenId緩存下來。返回OpenId,走正常程序流。

第二次請求時,把OpenId直返回。不再請求。注意,這里,如果有第二次請求的話,第一次請求會正常走完,但頁面不會返回,第二次請求時將頁面返回。

可能說的有點亂。希望能給您帶去一點思路。

Copyright? 2015 仟億科技,All rights reserved.
2肖3码王中王心水