token使用

前端带账户密码登录
后端校验通过,生成token,传回给前端保存在本地
前端跳转到主页,请求API时 带上token 后端过滤器校验token,通过就增删改查DB,返回数据,
前端展示数据,
如果token验证未通过,就返回错误码,前端提示错误信息,跳到登录页

token使用
token包括
1.HS256算法 加密
2.Id
3.过期时间
4.**

登录身份验证可以用cookie和session结合使用token

用token的好处是?

多用户系统,用户A可以带token去执行增删改查用户A的数据,就是在每次请求API时带上token

系统只有一个管理员,需要token吗?

一个管理员的时候,后台数据可以分成和多张表,分开请求
多个管理员的时候,每张表都有很多份,
后台每次请求都要带上token,让服务端知道你要请求的是哪个用户的数据

将数据给vuex的两种方式
this.$store.commit(“setuserInfo”,loginUsername)
this.setuserInfo({ Authorization: _this.userToken });

this.store.commit可以传一个data数组到vuex吗
可以,之前出现不可以原因是:
vuex已经接收到了res.data数组,但打印不出res.data.userInfo,提示未定义,所以页面才能显示,
后台登录成功时返回自定义数组data,不要返回校验成功的账户密码

token是可以设置时效的,登录的时候生成,存一份到服务端,给一份客户端存在本地,
客户端可以用这个token作为通行证进行增删改查自己的东西。token用于服务端辨别客户端登录的
是哪个用户,该返回哪个用户的信息,和提供哪个用户的API如果没有token或其他方法,会出现情况是
可以多用户登录,但增删改查都是同个人的东西,所有账户权限一样。那么问题来了,
1.怎么使用token?已解决
2.怎么在请求接口的时候带上token?
就是怎么根据不同token,让服务端返回不同数据

Token是服务端生成的一串字符串,以作客户端进行请求的一个令牌,当第一次登录后,
服务器生成一个Token便将此Token返回给客户端,以后客户端只需带上这个Token前来请求数据即可,
无需再次带上用户名和密码。

npm install jsonwebtoken

多用户场景:

用户表1,2,3,4…

用户1有多张表A1,B1,C1,D1…
用户2有多张表A2,B2,C2,D2…
用户3有多张表A3,B3,C3,D3…

问题:用户1登录,拿到表A1,B1,C1,D1…

解决方案:让表A1,B1,C1,D1嵌套在用户1的user表里,查的时候能通过查user
将user里面的表返回给客户端

//数组转json串
var arr = [1,2,3, { a : 1 } ];
JSON.stringify( arr );

//json字符串转数组
var jsonStr = ‘[1,2,3,{“a”:1}]’;
JSON.parse( jsonStr );

{ “firstName”:“John” , “lastName”:“Doe” },是数组,firstName是对象,对象是[]里面的

相关文章:

  • 2022-12-23
  • 2022-01-21
  • 2021-06-14
  • 2022-12-23
  • 2022-02-10
  • 2022-01-07
  • 2021-10-18
猜你喜欢
  • 2021-04-18
  • 2022-02-02
  • 2021-11-30
  • 2022-02-17
  • 2021-06-03
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案