开发者社区> 问答> 正文

无法获取AccessToken

com.alibaba.nls.client.AccessToken#apply获取token失败,
返回:{"ErrMsg":""} 导致sdk抛错npe异常

展开
收起
404 2019-04-17 17:54:12 2724 0
1 条回答
写回答
取消 提交回答
  • 我们通过一些手段尝试性的触发问题现象: 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,然后再次调用接口。这种容错机制本来是微信的事-_-!
    

    来源于网络,供您参考,如若满意,请点击右侧【采纳答案】,如若还有问题,请点击【追问】 希望我的回答对您有所帮助,望采纳! ~ O(∩_∩)O~ image.png

    2019-10-14 09:53:07
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载