Node.JS API 项目错误

问题描述 投票:0回答:2

我正在构建我的第一个 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'],
    })
node.js mongodb express jwt
2个回答
0
投票

当你使用时,你没有正确使用

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'],
    })

0
投票

由于您要导入整个模块,因此必须指定要使用的函数。例如:

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

function authJwt() {
    const secret = process.env.secret;

    return expressJwt.expressjwt({
        secret,
        algorithms: ['HS256'],
    })
  }
© www.soinside.com 2019 - 2024. All rights reserved.