npm install jsonwebtoken express-jwt
index.js
const expressJWT = require('express-jwt')
const secretKey='gzui'
注意顺序
app.use(cors({ origin: '*' }));
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: false }));
const unlessArr = ['/api/user/login'];
app.use(expressJWT({ secret: secretKey,algorithms:['HS256'] }).unless({ path: unlessArr }))
app.use(api)
// 使用全局错误处理中间件,捕获解析 JWT 失败后产生的错误
app.use((err, req, res, next) => {
console.log('这次错误是由 token 解析失败导致的',err)
// 这次错误是由 token 解析失败导致的
if (err.name === 'UnauthorizedError') {
return res.send({
status: 401,
message: '无效的token',
})
}
res.send({
status: 500,
message: '未知的错误',
})
})
api.js
const jwt=require('jsonwebtoken')
const secretKey='gzui';
router.post('/api/user/login', function (req, res) {
// 将 req.body 请求体中的数据,转存为 userinfo 常量
const userinfo = req.body
// console.log('req.body',req.body)
Users.find({name: req.body.name, password: req.body.password},(err,data) => {
if (err) {
// res.send(err);
剩余50%内容付费后可查看
