用于'LIKE'的LOOPBACK REST API

时间:2017-10-05 07:24:55

标签: rest api loopback

如何在LoopBack上为“LIKE”查询键入REST API?

根据Loopback文档, 我已经尝试过这样:

ProductDealers?filter={"where":{"DealerCode":"T001","Active":"true","SKU":{"like":"1000.*"}}}

但没有任何反应, 请帮帮我?

3 个答案:

答案 0 :(得分:0)

这就像是

Post.find({
  where: {
    title: {
      like: 'someth.*',
      options: 'i'
    }
  }
});

和api通话

?filter={"where":{"title":{"like":"someth.*","options":"i"}}}

请查看此PR了解详情

答案 1 :(得分:0)

我找到了答案,我不知道为什么当我使用括号时它无法正常工作" {}" 但是当我使用" []" ,它很有效,比如

Products?filter[where][Name][like]=%25" + valFilter + "%25&filter[where][Active]=1&filter[where][Deleted]=0"

干杯!

答案 2 :(得分:0)

有点晚了,但是我实际上是在寻找其他东西之后发现的。

对于大多数人来说,问题在于,有一种叫做 URL编码。

在此处了解更多信息: https://en.wikipedia.org/wiki/Percent-encoding

因此,如果您像上面的示例中那样对json过滤器进行字符串化,请确保将字符串化的对象放入Uri编码器中,这将确保您将获得期望的结果并控制值的编码

let t_filter = {
  where: {
    title: {
      like: 'someth.*',
      options: 'i'
    }
  }
};

let result = encodeURI(JSON.stringify(t_filter));

之后,将结果不仅发送到字符串化的对象,还发送到您的Api