access_token获取失败 已经网上研究好几天了,都没解决,各种网上的解决办法都试了试,没管用的,,,,,大神帮我看看,检测结果。
1 回答
慕后森
TA贡献1802条经验 获得超5个赞
我们通过一些手段尝试性的触发问题现象:
1、测试环境下,清空access_token的redis数据。
2、正常测试,功能ok,查看access_token的redis内容,这里假设值为A。
3、手动调用接口刷新access_token,大概十几次后,值变化为B。
4、再次正常测试,发现功能异常(因为此时存储在redis的access_token已经过期)。
5、清空access_token的redis数据,再次测试,功能又恢复正常。
现在问题终于变成必现的了:)
解决方案
现在我们搞清楚问题的原因是存储在redis的access_token可能在很短的时间内过期(因为有太多中控服务器啦),但是我们一般设置的有效期都接近或等于7200s,这就导致一旦出现问题的话,如果不清理redis,问题就会持续2小时左右,这简直就是灾难!
目前想到的比较理想的解决方案就是:服务器发现功能异常时,刷新access_token并更新redis,然后再次调用接口。这种容错机制本来是微信的事-_-!
添加回答
举报
0/150
提交
取消