技术分享——node.js设置以及检验token!

引言:相比于session,token更具有优势,其一,token不占用服务器空间,其二,tooken没有多服务器黏性问题,其三tooken会被拦截安全性更高。接下来带着大家在node平台上去设置以及检验tooken。
1,可以下载express包来开启服务器,并下载jsonwebtoken中间件。

在这里插入图片描述

2,使用sign方法来设置token,并把客户端传来的数据就行加密,加密方法可以自己定义。

其中 expiresIn属性用来设置token时效
设置完毕后把token 发送给客户端

在这里插入图片描述 3,对客户端发送携带token的请求就行检验。
客户端一般把token都携带在ajax请求里的请求头中。
使用jsonwebtoken中间件的verify进行数据的解密验证,使用自己定义的加密方式。
成功则返回正确数据。
在这里插入图片描述

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Node.js 中,可以使用 jsonwebtoken 模块来生成和验证 JWTJSON Web Tokens)。 首先需要安装 jsonwebtoken 模块,可以使用 npm 命令进行安装: ``` npm install jsonwebtoken ``` 接着,使用以下代码生成 token: ```javascript const jwt = require('jsonwebtoken'); const payload = { id: '123', username: 'john.doe', role: 'admin' }; const secret = 'mysecretkey'; const token = jwt.sign(payload, secret, { expiresIn: '1h' }); console.log(token); ``` 在这个例子中,`payload` 是一个对象,包含要传递给客户端的数据。`secret` 是一个字符串,用于对 token 进行加密。`expiresIn` 是一个可选的参数,用于设置 token有效期。 接下来,可以使用以下代码验证 token: ```javascript const jwt = require('jsonwebtoken'); const secret = 'mysecretkey'; const token = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjEyMyIsInVzZXJuYW1lIjoiam9obi5kb2UiLCJyb2xlIjoiYWRtaW4iLCJleHAiOjE2MjM5NzY5MTB9.9z9WZ1tjKg2x2PdMkL8OyNz5cV7Kj1zZS5a5Ngf0Ku4'; jwt.verify(token, secret, (err, decoded) => { if (err) { console.error(err); } else { console.log(decoded); } }); ``` 在这个例子中,`token` 是要验证的 token 字符串。`jwt.verify()` 方法会将 token 解密,并验证签名和有效期。如果验证成功,`decoded` 参数将包含解密后的数据。 需要注意的是,token 中的数据是可以被解密的,因此不应该在其中包含敏感信息。只有在经过验证后,才能信任其中的数据。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值