Loopbackjs 环回-可以使用POST检索资源

Loopbackjs 环回-可以使用POST检索资源,loopbackjs,strongloop,Loopbackjs,Strongloop,尝试使用环回框架模拟后端服务。我需要使用POST方法检索对象。我知道REST服务通常允许POST更新/创建资源,但在这里,我不能使用GET和资源详细信息来检索数据 在我的例子中,POST数据包含几个查询字段,这些字段必须用于查询对象并将json发送回。这是否可能与环回?我无法将GET与查询参数一起使用,因为在GETURL中将数据作为查询参数发送时存在安全限制 这是请求后的数据 [ { customer:"sam", city:"noWhere", } ] POST事件应按客户和城市查询,然后返

尝试使用环回框架模拟后端服务。我需要使用
POST
方法检索对象。我知道REST服务通常允许
POST
更新/创建资源,但在这里,我不能使用
GET
和资源详细信息来检索数据

在我的例子中,
POST
数据包含几个查询字段,这些字段必须用于查询对象并将json发送回。这是否可能与环回?我无法将
GET
与查询参数一起使用,因为在
GET
URL中将数据作为查询参数发送时存在安全限制

这是请求后的数据

[ { customer:"sam", city:"noWhere", } ]
POST
事件应按客户和城市查询,然后返回匹配的客户对象

[ { customer:"sam", postcode:"352345", city:"noWhere", country:"US" } ]

我认为您需要的是一个快速http方法覆盖中间件:

以及在环回中定义中间件:

您可以覆盖默认的环回端点,如下所示

// Define custom remote method
Customer.fetch = function(oRequest, fnResponseCb) {
  /* Do staff to find customer and finally call fnResponseCb(null, oCustomer) */
}

// Override custom remote method
Customer.remoteMethod('fetch', {
  accepts: {
    arg: 'oRequest',
    type: 'object',
    http: { source: 'body' }
  },
  returns: {
    type: 'object',
    root: true
  },
  http: {
    path: '/',
    verb: 'POST'
  },
  description : 'Fetch Customer'
});

您可以重写内置方法。请阅读“更改内置方法的实现”一节中的文档。