首页 > 其他分享 >token(JWT)

token(JWT)

时间:2023-07-01 14:56:27浏览次数:43  
标签:加密 JWT jwt 校验 token 客户端

token(JWT)

  • token是服务端生成并返回给HTTP客户端的一串加密字符串,token中保存着用户信息
  • 实现会话控制,可以识别用户的身份,主要用于移动端 APP
  • token的工作流程
    1. 校验身份,校验通过后响应tokentoken一般是在响应体中返回给客户端的
    2. 后续发送请求时,需要手动将token添加在请求报文中,一般是放在请求头中
  • token的特点
    1. 服务端压力更小(数据存储在客户端)
    2. 相对更安全(数据加密、可以避免CSRF【跨站请求伪造】)
    3. 扩展性更强(服务间可以共享、增加服务节点更简单)

JWT

  • JWT(JSON Web Token)是目前最流行的跨域认证解决方案,可用于基于token的身份验证
  • JWT使token的生成与校验更规范

扩展阅读

使用jsonwebtoken包操作token示例

//导入 jsonwebtokan
const jwt = require('jsonwebtoken')

//创建 token
// jwt.sign(数据, 加密字符串--盐值, 配置对象)
let token = jwt.sign(
    {
        username: 'zhangsan'
    }, 
    'tokentest', 
    {
        expiresIn: 60 //单位是 秒
    }
)

//解析 token
// jwt.verify(token, 加密字符串--盐值, 回调函数)
jwt.verify(token, 'tokentest', (err, data) => {
    if(err){
        console.log('校验失败~~')
        return
    }

    console.log(data)
})

标签:加密,JWT,jwt,校验,token,客户端
From: https://www.cnblogs.com/wdszh/p/17515295.html

相关文章

  • 三个好基友Cookie、Session和Token
    原创声明,转载请注明文章链接来源、作者信息https://mp.weixin.qq.com/s/JGuo0HPAEmcNQMAQ22MhjgCookie、Token和Session区别hello,我是索奇~精心写了一篇Cookie、Session和Token的vivid文章,并分享给大家我们可以把Cookie、Token和Session看作是三个好基友,它们都是用来跟踪用户的身......
  • Csharp的CancellationToken 案例
    usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Net.Http;usingSystem.Text;usingSystem.Threading;usingSystem.Threading.Tasks;//命名空间namespacepro01{//类internalclassProgram{//main方法......
  • node使用jsonwebtoken生成token与验证是否过期
    场景我们可以使用cookie,session,token来做鉴权。下面我们来看一下,如何使用token来做鉴权jwt.sign的简单介绍npminstalljsonwebtoken下载使用jsonwebtoken生成token的基本语法。jwt.sign(payload,secretOrPrivateKey,[options,callback])第1个参数payload:可以......
  • Session,JWT使用总结
    01.Session:优点:Session是存储在服务端的,安全缺点:服务器集群环境下无法直接使用Session移动端APP(Android、IOS)中无法使用Cookie用户可以自己禁用CookieCookie不能跨域02.令牌技术:JWT令牌JSONWebToken(官网:https://jwt.io/)1.定义了一种简洁的、自包含的格式,用于在通信......
  • React学习时,outlet配置(token判定,页面path监听)
    尽管写过outlet路由的配置。考虑到token判定和路由页变更,我不了解v6是不是有更详解的做法。决定调一下配置,期望在任何页面异步更新时,token都可以在跳转前被检测到,防止无token跳转发生。为src文件配置v6版本:路由子组件App.jsimport{HashRouter,Routes,Ro......
  • jwt介绍
    适用场景前后端分离时,登陆后,用户标识保存到客户端,后续请求时,带着用户标识,以此来区分是否登录。用户标识可以是用户id、也可以包含其他字段,通常还得加密或者加签名,提交到服务器端时还要验证签名,这块信息没有约定格式,jwt就是一个格式,它规定了签名、加密、内容等等。简介jwt=jsonweb......
  • 无感刷新token
    无感刷新token//首先需要在响应拦截里面加一个code反馈码的判断是401就调用刷新token的方法//响应拦截api.interceptors.response.use((response:any)=>{if(response.data.code==200){done();returnresponse;}elseif(response.dat......
  • TypeError: token.type.endsWith is not a function
    起因公司产品项目拉下来,安装完依赖就报这个错误token.type.endsWithisnotafunction 解决方案发现是eslint的版本将 babel-eslint版本为10.1.0,把版本降为8.2.2,即重新安装指定版本的依赖。重新安装,并重启后,解决问题 [email protected] ......
  • 【Node】node 报错:tagOffsetsMap[tag] ??= [];...SyntaxError: Unexpected token ,‘??=
    安装的node版本不支持空值赋值运算符(??=)更换合适的node版本就行更多支持请在node.green上查看各种语法支持的版本参考文章NodeJS中的空合并赋值运算符(??=)......
  • 【HMS Core】web端网页应用集成账号服务,请求/oauth2/v3/token返回状态码403
    【问题描述】web端网页应用接入华为账号,请求/oauth2/v3/token返回状态码403请求代码:响应日志:【问题分析】这是由于跨域访问报错了,建议从服务器端调用token接口重试,不要把client_secret暴露到web端【解决方案】服务器端调用token接口参考链接:https://developer.huawei.com/consumer......