目录
5. 整合JWT
5.1 生成Token
5.2 携带Token
5.2.1 保存token
5.2.2 携带token
5.3 校验Token
5.4 获得Token
5. 整合JWT
5.1 生成Token
- 用户登录成功后,通过工具类,将用户信息转换成token
 - 步骤:
 
- 拷贝工具类,及其Properties类
 - yml配置
 - 登录生成token
 
- 拷贝工具类,及其Properties类
 
- 注意:Swagger处理标准请求头,不再是X-Token
 

- yml配置
 - 登录生成token
 


5.2 携带Token
5.2.1 保存token
- 用户登录成功后,将token保存浏览器
 - 通过浏览器查看保存的数据
 


5.2.2 携带token
- 对axios进行增强,需要每次都写到token
 - 步骤:
 
- 编写nuxt的插件
 - 注册插件
 
- 编写nuxt的插件
 - //https://axios.nuxtjs.org/helpers
 - //https://axios.nuxtjs.org/extend export default function ({ $axios, redirect }) { $axios.onRequest(config => { // 从 localStorage 获得token,并添加到头 let token = localStorage.getItem('token') if(token) { //Adds header: `Authorization: 123` to all requests $axios.setToken(token) } }) $axios.onError(error => { const code = parseInt(error.response && error.response.status) if (code === 400) { redirect('/400') } }) }
 - 注册插件
 - { src: '~/plugins/axios.js', mode: 'client' }
 


- 测试:每次请求都携带token
 

5.3 校验Token
- 在Gateway编写过滤器,注意:处理的请求头名字为
Authorization 

5.4 获得Token
 
TbUser tbUser = JwtUtils.getObjectFromToken(token, jwtProperties.getPublicKey() , TbUser.class);
 










