当我尝试使用 jwt nodejs 登录时,出现此错误“错误:Route.post() 需要回调函数,但得到了 [对象未定义]”

问题描述 投票:0回答:1
module.exports.singIn = async (req, res) => {
  const { email, password } = req.body

  try {
    const user = await UserModel.login(email, password)
    const token = createToken(user._id)
    res.cookie('jwt', token, { httpOnly: true, maxAge });
    res.status(200).json({ user: user._id })
  } catch (error) {
    res.status(200).json({ error });
  }
}

错误:Route.post() 需要一个回调函数,但得到了一个 [对象未定义] 在路线。 [作为帖子] (/home/cedrick/Documents/formation-mastering-front-end/fullstack/soko/api/node_modules/express/lib/router/route.js:216:15) 在原型。 [作为帖子] (/home/cedrick/Documents/formation-mastering-front-end/fullstack/soko/api/node_modules/express/lib/router/index.js:521:19) 在对象。 (/home/cedrick/Documents/formation-mastering-front-end/fullstack/soko/api/routes/user.route.js:8:8) 在 Module._compile (节点:内部/模块/cjs/loader:1254:14) 在 Module._extensions..js (节点:内部/模块/cjs/loader:1308:10) 在Module.load(节点:内部/模块/cjs/loader:1117:32) 在 Module._load (节点:内部/模块/cjs/loader:958:12) 在 Module.require (节点:内部/模块/cjs/loader:1141:19) 在需要时(节点:内部/模块/cjs/helpers:110:18) 在对象。 (/home/cedrick/Documents/formation-mastering-front-end/fullstack/soko/api/server.js:4:20)

node.js jwt
1个回答
0
投票

signIn
是一个属性,所以使用它时,请像这样:

const {singIn} = require('./signin');

app.use('/signin', signIn, ...

或者,导出时删除

signIn
以将其加载为函数:

// signin.js
module.exports = async (req, res) => {...

//app
const singIn = require('./signin');

app.use('/signin', signIn, ...

模块

© www.soinside.com 2019 - 2024. All rights reserved.