Token的详解

Token的详解

前言:

为什么会用到Token,因为cookiesession一些自身的缺点,限制了一些功能的实现,比如:
cookie:优点是节省服务器空间,缺点不安全。不要保存敏感信息。
session:优点是安全,缺点需要服务器空间(服务器重启,则数据丢失), 是一种最常见的解决方案。而这个时候,我们用token就能更好。

简介:

token的意思是“令牌”,是服务端生成的一串字符串,作为客户端进行请求的一个标识。
JWT(json web token) 的原理是,服务器认证以后,生成一个 JSON 对象,发回给用户,就像下面这样。

{
"姓名": "箫哥",
"角色": "管理员",
"到期时间": "2024年7月11日0点0分"
}

以后,用户与服务端通信的时候,都要发回这个 JSON 对象。服务器完全只靠这个对象认定用户身份。
当然,为了防止用户篡改数据,服务器在生成这个对象的时候,会给他加密一下,就是我们看到的一个长长的字符串
如图所示:
在这里插入图片描述

使用token:

使用基于 Token 的身份验证方法,在服务端不需要存储用户的登录记录。大概的流程是这样的

1.前端使用用户名跟密码请求首次登录

2.后服务端收到请求,去验证用户名与密码是否正确

3.验证成功后,服务端会根据用户id、用户名、定义好的秘钥、过期时间生成一个 Token,再把这个 Token 发送给前端

4.前端收到 返回的Token ,把它存储起来,比如放在 Cookie 里或者 Local Storage 里

5.前端每次路由跳转,判断 localStroage 有无 token ,没有则跳转到登录页。有则请求获取用户信息,改变登录状态;

6.前端每次向服务端请求资源的时候需要在请求头里携带服务端签发的Token

7.服务端收到请求,然后去验证前端请求里面带着的 Token。没有或者 token 过期,返回401。如果验证成功,就向前端返回请求的数据。

8.前端得到 401 状态码,重定向到登录页面。

相关推荐

  1. token详解与使用

    2024-03-28 14:00:02       20 阅读
  2. 大模型 Token 使用详解:限制与注意事项

    2024-03-28 14:00:02       18 阅读
  3. Auto tokenizer和Bert tokenizer区别

    2024-03-28 14:00:02       42 阅读
  4. 训练trocrtokenizer

    2024-03-28 14:00:02       16 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-03-28 14:00:02       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-03-28 14:00:02       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-03-28 14:00:02       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-03-28 14:00:02       20 阅读

热门阅读

  1. C#基础-五大数据类型

    2024-03-28 14:00:02       15 阅读
  2. Tomcat 启动闪退问题解决方法

    2024-03-28 14:00:02       19 阅读
  3. neutron 运维命令

    2024-03-28 14:00:02       15 阅读
  4. Centos7.9备份mysql数据库

    2024-03-28 14:00:02       17 阅读
  5. Spring和Spring Boot的区别

    2024-03-28 14:00:02       20 阅读
  6. python借用redis调用大模型,实现摘要的速度优化

    2024-03-28 14:00:02       16 阅读
  7. mysql 用户管理-权限表

    2024-03-28 14:00:02       22 阅读
  8. php:页面链接数据库(封装),其他页面引入方法

    2024-03-28 14:00:02       18 阅读
  9. Hbase常用命令选择题

    2024-03-28 14:00:02       17 阅读
  10. 浅谈AI大模型学习的理论基础和发展

    2024-03-28 14:00:02       14 阅读
  11. 搭建Docker Notary服务

    2024-03-28 14:00:02       18 阅读
  12. 如何在服务器上传/下载文件

    2024-03-28 14:00:02       17 阅读