我正在构建我的第一个 API Web 项目,但遇到了错误:
return expressJwt({
^
TypeError: expressJwt is not a function
这是我的代码:
const expressJwt = require('express-jwt');
function authJwt() {
const secret = process.env.secret;
return expressJwt({
secret,
algorithms: ['HS256'],
})
当你使用时,你没有正确使用
espress-jwt
const expressJwt = require('express-jwt');
您正在导入所有库,但是,您需要专门的
expressJwt
方法,因此您可以执行类似的操作
const expressJwt = require('express-jwt');
function authJwt() {
const secret = process.env.secret;
return expressJwt.expressJwt({
secret,
algorithms: ['HS256'],
})
或者甚至更好,如官方文档中所述
const { expressJwt: jwt } = require('express-jwt');
function authJwt() {
const secret = process.env.secret;
return jwt({
secret,
algorithms: ['HS256'],
})
由于您要导入整个模块,因此必须指定要使用的函数。例如:
const expressJwt = require('express-jwt');
function authJwt() {
const secret = process.env.secret;
return expressJwt.expressjwt({
secret,
algorithms: ['HS256'],
})
}