Javascript 如何使用膝关节炎的身体反应多种反应? 我是新节点,有膝关节炎和PostgreSQL。我已经创建了一个用户登录api,但我得到404未找到错误。我的查询和检查与我在控制台上的检查一样有效,但ctx.body不起作用。如何处理多个响应与膝关节炎?不知道为什么没有ctx身体在工作。我们如何解决这个问题? 希望你能理解我的问题 router.post('/userLogin', async (ctx) => { var email = ctx.request.body.email; var password = ctx.request.body.password; if ( !email || !password ) { ctx.response.status = 400; ctx.body = { status: 'error', message: 'Please fill all the fields' } } else { await ctx.app.pool.query("SELECT * FROM users WHERE email = $1", [`${email}`], async (err, result) => { if(err){ console.log(err); throw err; } if (result) { await bcrypt.compare(password, result.rows[0].password).then(function (res) { if (res === true) { ctx.body = { status: 200, message: "User login successfully", data: result.rows[0], }; }else{ ctx.body = { status: 400, message: "Incorrect password", } } }); }else{ ctx.body = { status: 400, message: "Invalid email", } } }); } });

Javascript 如何使用膝关节炎的身体反应多种反应? 我是新节点,有膝关节炎和PostgreSQL。我已经创建了一个用户登录api,但我得到404未找到错误。我的查询和检查与我在控制台上的检查一样有效,但ctx.body不起作用。如何处理多个响应与膝关节炎?不知道为什么没有ctx身体在工作。我们如何解决这个问题? 希望你能理解我的问题 router.post('/userLogin', async (ctx) => { var email = ctx.request.body.email; var password = ctx.request.body.password; if ( !email || !password ) { ctx.response.status = 400; ctx.body = { status: 'error', message: 'Please fill all the fields' } } else { await ctx.app.pool.query("SELECT * FROM users WHERE email = $1", [`${email}`], async (err, result) => { if(err){ console.log(err); throw err; } if (result) { await bcrypt.compare(password, result.rows[0].password).then(function (res) { if (res === true) { ctx.body = { status: 200, message: "User login successfully", data: result.rows[0], }; }else{ ctx.body = { status: 400, message: "Incorrect password", } } }); }else{ ctx.body = { status: 400, message: "Invalid email", } } }); } });,javascript,node.js,postgresql,koa,ctx,Javascript,Node.js,Postgresql,Koa,Ctx,关于您的404问题: HTTP 404表示您的路由还不存在。请确保您的router.post('/userLogin')路由器实际上是通过app.use(router.routes())注册的 关于使用ctx.body进行多个回答,请参考您的问题: 您可以多次设置ctx.body,但在响应中只使用最后一个 例如: ctx.body='Hello' ctx.body=‘世界’ 此示例将以World响应 您可以连接您的值,以便将它们作为一个字符串/对象发送,也可以在控制读取流缓冲区的情况下使用流。

关于您的404问题: HTTP 404表示您的路由还不存在。请确保您的
router.post('/userLogin')
路由器实际上是通过
app.use(router.routes())
注册的

关于使用
ctx.body
进行多个回答,请参考您的问题:

您可以多次设置
ctx.body
,但在响应中只使用最后一个

例如:

ctx.body='Hello'
ctx.body=‘世界’
此示例将以
World
响应

您可以连接您的值,以便将它们作为一个字符串/对象发送,也可以在控制读取流缓冲区的情况下使用流。检查和查看文档