自从学习微信聊天记录换手机开發就一直遇到大大小小的bug每次的问题都是绞尽脑汁啊。
最近测试刚完成的网页授权获取微信聊天记录换手机用户信息功能突然出现了很哆人都关注的错误而且网上都没有得到解决的错误?
现在终于得到完全解决给走在路上或正在路上出现问题的伙伴一个走捷径的方法。
问题描述:网页授权获取微信聊天记录换手机用户信息 错误40029:不合法的oauth_code
在第一步:用户同意授权获取code,通过code获取access_token时有时会出现40029错误。
经过调试会发现问题出现在redirect_uri=REDIRECT_URI当跳转到授权链接后微信聊天记录换手机会发出两次转向至redirect_uri的相同请求(两次带进来的code是相同的)。
可这種情况只是偶尔发生过一会儿再进入又正常了 !
if(!empty($dlzt)) //上面说了 记录code是否重复提交,此处就是判断这个$dlzt存在了不执行获取用户信息因为用户信息已经获取过了。
这里放如果存在二次转向到redirect_uri时在这里进行第二次跳转的逻辑判断,我此处是进行登录获取用户信息因为第一次已經登录完成了,登录状态和相关逻辑都已经成功执行一次第二次我是直接跳入会员中心,就避免了第二次重复登录出现code无限的错误了
delete_cookie("dlzt");//刪除我们设置的$dlzt 这个cookie值,删除好处是用户重新打开页面或下次访问页面还是第一次访问状态,不会出现因为有值而导致不执行获取微信聊天记录换手机用户信息出错
//此处是完整的通过code来获取accesstoken 及获取用户资料。
// (假设token过期需要从小获取自己去判断)
著作权归作者所有商業转载请联系作者获得授权,非商业转载请注明出处