前端和后端如何使用jwt进行token校验,前后端代码实现
时间: 2024-01-23 10:01:53 浏览: 38
好的,下面我将为您提供前端和后端使用JWT进行token校验的代码实现。
前端代码实现:
1. 安装jsonwebtoken库
```
npm install jsonwebtoken
```
2. 在登录成功后,生成token并存储在本地:
```
import jwt from 'jsonwebtoken';
const token = jwt.sign({ userId: '123456' }, 'secretKey', { expiresIn: '1h' });
localStorage.setItem('token', token);
```
3. 在发送请求时,将token添加到请求头中:
```
import axios from 'axios';
const token = localStorage.getItem('token');
axios.defaults.headers.common['Authorization'] = `Bearer ${token}`;
```
后端代码实现:
1. 安装jsonwebtoken库
```
npm install jsonwebtoken
```
2. 在接收请求时,从请求头中获取token,进行校验:
```
const jwt = require('jsonwebtoken');
const token = req.headers.authorization.split(' ')[1];
let decodedToken;
try {
decodedToken = jwt.verify(token, 'secretKey');
} catch (error) {
return res.status(401).json({ message: 'Invalid token' });
}
const userId = decodedToken.userId;
// 根据userId进行相应的权限校验和业务逻辑处理
```
以上是使用JWT进行token校验的一般步骤和代码实现,需要根据具体的业务场景进行相应的调整。