nodejs jwt java_NodeJs使用jwt生成token以及使用express-jwt校验和解密token

/注:校验token,获取headers⾥里里的Authorization的token方法,要写在路由加载之前,静态资源之后

app.use(expressJWT({

secret: PRIVATE_KEY

}).unless({

path: ['/api/user/register','/api/user/login'] //⽩白名单,除了了这⾥里里写的地址,其他的URL都需要验证

}));

一、生成token

1、安装jsonwebtoken

npm install jsonwebtoken -S

2、在公共文件中定义一个秘钥和过期时间(单位是秒)

module.exports = {

"PRIVITE_KEY":"我是秘钥",

"EXPIRESD":60*60*24

}

3、在需要生成token的页面引入jsonwebtoken(路由页面)

// jwt生成token

var {PRIVITE_KEY,EXPIRESD} = require("../utils/store")

const jwt = require("jsonwebtoken");

//jwt.sign()方法可生成token,第一个参数写的用户信息进去(可以写其他的),第二个是秘钥,第三个是过期时间

let token = jwt.sign({username},PRIVITE_KEY,{expiresIn:EXPIRESD});

32b9f08672ff2b39340035e81f3aa17d.png

二、校验和解密token(此方法写在静态资源加载之后,不然静态资源不能访问))

1、安装express-jw

npm install express-jwt

2、校验token,获取headers⾥里里的Authorization的token

前端token值格式 Bearer+token    这是express-jwt规定的前端格式

在入口文件app.js中引入express-jw以及token加密时使用的秘钥

const expressJWT = require('express-jwt');

var { PRIVITE_KEY } = require("./utils/store");

//使用此方法拦截所有请求看token是否正确(此方法写在静态资源加载之后,不然静态资源不能访问)

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Node.js中的JWT(JSON Web Token)是一种用于在网络应用程序之间安全地传输信息的开放标准。JWT由三部分组成:头部、载荷和签名。头部包含令牌的元数据,载荷包含有关用户或其他数据的信息,签名则用于验证令牌的完整性。 下面是使用jsonwebtoken生成和验证JWT的示例代码: 1. 生成JWT: ```javascript const jwt = require('jsonwebtoken'); const payload = { id: 123, username: 'example' }; const secret = 'mysecretkey'; const token = jwt.sign(payload, secret, { expiresIn: '1h' }); console.log(token); ``` 2. 验证JWT: ```javascript const jwt = require('jsonwebtoken'); const token = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6MTIzLCJ1c2VybmFtZSI6ImV4YW1wbGUiLCJpYXQiOjE2NjA5MjQwNzksImV4cCI6MTY2MDkyNzY3OX0.7JZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJvJZJ

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值