为了安全,接口提供的数据时,往往都会采用携带登录token的方式去请求数据接口。而这个token也有较长的失效时长,所以每次调用接口,只需要登录一次获取到token后,在失效时间内多次使用同一个token就可以了,避免了每次请求接口还要重复的获取token,节省了时间和资源。
所以项目中关于这个会失效的token该怎么存储呢?存数据库?也行但是没那个必要。这种定时更新的token完全可以存到项目中的全局变量里。
下面以springboot项目为例,展示下该如何存储可变的tokenn信息。
这里采用的方案是:springboot自带的的Scheduled定时任务+全局变量
,定时更新token,用到时直接获取这个全局变量即可。
直接放代码:
1 | import com.alibaba.fastjson.JSONObject; |
其实还是很简单的,启动项目时定时任务就会自动执行,并更新token,然后根据设置的时间再去定时更新。
下面是获取这个全局变量的代码:
1 | Map<String, String> codeMap = TokenCache.codeMap; |
pom需要引入的jar包
1 | <dependency> |
没啥技术含量,感觉又水了一篇文章