{errcode : 40094 ,errmsg : req id: 40ZR.a0918ns30, invalid component credential}
这个是我遇到的问题网页受权oauth2.0错误信息缓存
我当时思路以下:服务器
一、微信服务器返回给个人受权码code是没有问题的,由于他不是invalid code这个错误微信
二、accesstoken确定没问题,由于也没报 invalid accesstoken这个错误app
三、微信官网找此错误码,发现竟然没有,虽然找到一个同样的错误码40094,可是那个是微信卡卷的跟这个不是一个概念测试
四、百度,google满世界找这个错误码,发现找到的只有两条相似的,都没解决,可是在里面有人说多是阿里云服务器IP不是固定的缘由致使的google
五、问了下咱们的阿里云服务器IP是买的固定的阿里云
六、实属无奈之下猜测是否是,腾讯跟阿里巴巴竞争封他的IPspa
至于我为何会有以上想法彻底是由于,这个网页受权有时能够,有时不行,并且毫无规律可言code
但不能获取受权token+openid的时候 就会一直出现40094错误component
解决办法:最终解决发现问题来源是,缓存服务器的问题即accesstoken问题
一、至于我为何没考虑到token过时,由于他始终没出现过token过时的问题
二、致使token过时的罪魁祸首是,由于咱们申请了两个测试公众号第三方用于开发,咱们的token都是存储在阿里云OCS缓存里面,将这个token添加到缓存的时候有个key值,由于我用的这个环境跟另一个环境所配置的key值是同样的,那后来致使的后果就是,谁的后刷新,谁的token就能够用,因此会出现有时能够有时不行,
当个人后刷新token的话那就能够成功访问,当个人先刷新的话个人就不能访问,由于后者替换了前者,因此实际上取出来的token是没有过时的,可是跟这个第三方应用对接不上也就是key!=value,因此不存在token过时的错误,才会出现以上的凭证不对的错误,微信首先验证token是否有效,而后再去根据appid和token进行相应的处理吧,因此个人应用至关于用了一个其余应用有效的token,固然token跟应用对接的原理大伙能够看看网页受权2.0的实现机制,因此最终把另一个应用的云缓存key值换了,结果如今畅通无阻,整个世界清静了,固然token过时是同事找到的,由于我被他的错误码误导了,致使我排除了token无效的思路