首页 > 其他分享 >Token和Jwt的区别

Token和Jwt的区别

时间:2022-10-19 11:44:07浏览次数:42  
标签:请求 验证 JWT 区别 Jwt Token 服务端 客户端

Token基本原理

Token(就是加密的字符串,使用MD5,等不可逆加密算法,一定要保证唯一性)

客户端使用用户名跟密码请求登录

服务端收到请求,去验证用户名与密码

验证成功,服务端会签发一个Token保存到(Session,redis,mysql…)中,然后再把这个 Token 发送给客户端

客户端收到 Token 以后可以把它存储起来,比如放在 Cookie 里或者 Local Storage 里

客户端每次向服务端请求资源的时候需要带着服务端签发的 Token

服务端收到请求,验证密客户端请求里面带着的 Token和服务器中保存的Token进行对比效验, 如果验证成功,就向客户端返回请求的数据

JWT基本原理
JWT是json web token缩写。它将用户信息加密到token里,服务器不保存任何用户信息。服务器通过使用保存的密钥验证JWTToken的正确性,只要正确即通过验证。

JWT包含三个部分: Header头部,Payload负载和Signature签名。由三部分生成JwtToken,三部分之间用“.”号做分割。 校验也是JWT内部自己实现的 ,并且可以将你存储时候的信息从JwtToken中取出来无须查库

客户端使用用户名跟密码请求登录

服务端收到请求,去验证用户名与密码

验证成功,服务端会签发一个JwtToken,无须存储到服务器,直接再把这个JwtToken发送给客户端

客户端收到JwtToken以后可以把它存储起来,比如放在 Cookie 里或者 Local Storage 里

客户端每次向服务端请求资源的时候需要带着服务端签发的JwtToken

服务端收到请求,验证密客户端请求里面带着的 JwtToken, 如果验证成功,就向客户端返回请求的数据

Token和Jwt的区别

Token需要查库验证token 是否有效,而JWT不用查库,直接在服务端进行校验,因为用户的信息及加密信息,和过期时间,都在JWT里,只要在服务端进行校验就行,并且校验也是JWT自己实现的。

标签:请求,验证,JWT,区别,Jwt,Token,服务端,客户端
From: https://www.cnblogs.com/Timeouting-Study/p/16805712.html

相关文章

  • 工业串口服务器和工业交换机的区别有哪些?
    串口服务器:串口服务器可以促使您的串口设备联网,提供串口转网络功能,可以把RS-232/485/422串口转化成TCP/IP网络接口,完成RS-232/485/422串口与TCP/IP网络接口的数据双向透明传......
  • _initialize()函数与 __construct()函数的区别
    _initialize()方法是在任何方法执行之前,都要执行的,当然也包括__construct构造函数。也就是说如果存在_initialize()函数,调用对象的任何方法都会导致_initialize()函数的自......
  • Xen、KVM、Qemu间的关系和区别
    关于qemuQemu是一个独立的虚拟化解决方案,通过intel-VT或AMDSVM实现全虚拟化,安装qemu的系统,可以直接模拟出另一个完全不同的系统环境,虚拟机的创建通过qemu-image既可完成......
  • vue路由传参,query和params的区别
    路由传参是使用vue最常用的方法,而其中query和params都能实现传参效果,不过这两者还是有区别的首先路由配置{path:'/admin',//组件路径name:'admin',//组件别名com......
  • python当中map,reduce和filter函数用法和区别
    在python当中,关于map,reduce和filter函数用法。map:对任何可迭代序列中的每一个元素应用对应的函数。python3中返回的是迭代器。reduce:将序列中所有的元素进行合并运算......
  • dependencies和devDependencies的区别
    dependencies:项目依赖。在编码阶段和呈现页面阶段都需要的,也就是说,项目依赖即在开发环境中,又在生产环境中。如js框架vue、页面路由vue-router,各种ui框架antd、element-u......
  • Go struct字段添加指针与不添加指针的区别
    packagemainimport("fmt")typeNstruct{Namestring`json:"name"`Ageint`json:"age"`B*BBB`json:"b"`}typeBBBstruct{yystringbbbyte......
  • nodejs实现jwt
    jwt是jsonwebtoken的简称,本文介绍它的原理,最后后端用nodejs自己实现如何为客户端生成令牌token和校验token1.为什么需要会话管理我们用nodejs为前端或者其他服务提供......
  • 三阶段 vue 路由 $route 和 $router 的区别
    1.这是vue-router提供给我们的实例实例的两个属性(api)2.$route是路由对象,一般是获取动态参数|querythis.$route.params.idthis./$route.title ......
  • 进程和线程的区别
    进程概念进程是操作系统资源分配的最小单元。一个进程拥有的资源有⾃⼰的堆、栈、虚存空间(页表)、文件描述符等信息。从编程的角度来理解进程,可以把它看作是⼀个类或一......