我如何 return 在 node/adonis 中显示特定状态 + 消息?

How i can return a specific status + message in node/adonis?

我正在尝试 return 一个特定的响应状态和一条消息,当我的 api 收到错误消息时。

我这样试试:

return response.status(409).json({message: 'User already registered'})

但我收到了:

response is not defined

我尝试导入响应:

const response = use('Adonis/Src/Response')

但是这样我收到:

response.status is not a function

将此放在您的提供商或挂钩上,这在 docs

上有说明
const Response = use('Adonis/Src/Response')

Response.macro('send409', function (data) {
  this.status(409).send(data)
})

您需要使用来自控制器的 response 对象:

控制器

class MyController {
    async login({ response }) {
        return response.status(409).json({message: 'User already registered'})
    }
}

路线

Route.get('/users', async ({ response }) => {
  return response.status(409).json({message: 'User already registered'})
})