Loopback:我们如何修改内置模型函数的返回数据

时间:2017-02-02 11:56:51

标签: javascript node.js strongloop loopback

我创建了一个名为member的模型,该模型继承自内置模型User, 但是如何更改登录返回的格式。即,

目前无效登录正在返回

{
    "code": 401,
    "name": "Error",
    "message": "login failed",
    "code": "LOGIN_FAILED",
    "stack": "Error: login failed\n ..."
}

我想改变,

{
  "id": "P1jAavmCRbiYB1gYaE2snj3I6BayIYOCJ7HsTLeF1bezlEGVAUzjwdxKB5QFH9Vu",
  "ttl": 1209600,
  "created": "2017-02-02T13:19:05.709Z",
  "userId": "5885b186db6df92d3ada7777"
}

此外,成功案例也是如此,

即当前回报是

{
  "code": 200,
  "name": "Success",
  "token": "P1jAavmCRbiYB1gYaE2snj3I6BayIYOCJ7HsTLeF1bezlEGVAUzjwdxKB5QFH9Vu",
  "ttl": 1209600,
  "created": "2017-02-02T13:19:05.709Z",
  "userID": "5885b186db6df92d3ada7777"
}

我想改变,

svg:g

有可能吗?

1 个答案:

答案 0 :(得分:3)

您需要从中间件中删除strong-error-handler并添加自定义错误处理程序,如this

config.json中您需要执行以下操作:

...
"remoting" {
  ...
  "handleErrors": false
  ...
}
...

还在root / sever文件夹中创建config.local.js并在下面添加:

'use strict';

var errorConverter = require('./middlewares/error-converter');

module.exports = {
  remoting: {
    errorHandler: {
      handler: errorConverter()
    }
  }
};
middleare文件夹(或任何其他地方)中的

error-converter.js是自定义错误中间人