jwt token错误
Linux服务器上最近使用jwt token的时候遇到了一个奇怪的问题:
InvalidClaimException: The Token can't be used before 某个时间
本地调试完全没问题,测试环境只使用一台也没问题,但是一旦启用多台服务器就会报这个错误。
经分析发现,多台正式服务器的系统时间是不一样的,有一定的差值。生成token的服务器比使用token的服务器时间快几十秒,生成token后,请求分发到时间慢的服务器上导致时间还没到token的开始时间,才报这个错误。
通俗的讲:导致的原因是接收服务器使用了未来的jwt token
解决方法
同步服务器时间:
nptdate -u ntp1.aliyun.com //网络同步
ntpdate -u 192.168.1.20 //局域网同步
注意123端口必须可以使用
或者通过date设置系统时间