如何挂钩Loopback休息连接器执行?

时间:2016-10-03 10:36:47

标签: rest strongloop connector loopback

如何拦截rest-connector执行以格式化来自REST API连接器的响应?

我将'news'添加到datasources.json文件中:

{
  "file": {
    "name": "file",
    "localStorage": "",
    "file": "memory.db.json",
    "connector": "memory"
  },
  "news": {
    "name": "news",
    "crud": false,
    "debug": true,
    "connector": "rest",
    "options": {
      "strictSSL": false
    }
  }
}

我在mode-config.json文件中将此连接器与我的模型绑定

{
  "_meta": {
     ...
  },
  "publication": {
    "dataSource": "news",
    "public": true
  }
}

有效。现在,我如何设置新闻Rest API提供的响应格式?

我不知道loopback documentation

提供解决方案的代码

感谢。

1 个答案:

答案 0 :(得分:1)

我在启动存储库中创建了一个新的boot file

在这个启动脚本中,我可以访问数据源组件和News(我不知道为什么,但它以大写字母开头)连接器,以便添加我的钩子脚本。

module.exports = function(app) {
  app.dataSources.News.connector.observe('after execute', function (ctx, next) {

    var newRespone = ctx.res.body // Add your changes here.

    ctx.end(err, ctx, response);
  });
};

我可以解析REST API响应并对其进行格式化。 \ O /