之前有一篇博文写到如何用自定义JWT Token来保护你的项目,于是我很快在所有项目运用上了。
而其中,我们知道JWT Token是可以储存Claims的,作为这个令牌的负荷。我在上面放入了一个储存用户部分基本信息例如用户ID。但是怎么解析和接受这些Claims,上篇文章没有解释。
其实我想到的思路也很简单,参照以前SpringMVC是如何处理Session的。获得Session中储存的属性可以通过一个@ModelAttribute注解获得。于是我想到,我的Token虽然无状态,但是它和SESSION一样储存了一些属性(Claims)。只不过Session的内容由后端储存,前端传回的是一个SESSIONID,而Token的一切信息都在token里面,后端只负责解析。我想到的做法是模仿Session,我自定义了一个注解@TokenUser,然后拦截这个注解并注入这个参数。我实现过的做法一共有两种。
2018/10/30大约 4 分钟
