如何在LoopBack上输入"LIKE“查询的REST API?
根据Loopback文档,我已经尝试这样做:
ProductDealers?filter={"where":{"DealerCode":"T001","Active":"true","SKU":{"like":"1000.*"}}}
但是如果什么都没有发生,请帮帮我?
发布于 2017-10-08 17:40:14
它应该是这样的
Post.find({
where: {
title: {
like: 'someth.*',
options: 'i'
}
}
});
和for api调用
?filter={"where":{"title":{"like":"someth.*","options":"i"}}}
有关更多信息,请查看此
发布于 2017-10-09 13:12:51
我找到了答案,我不知道为什么当我使用括号“{}”时它不能工作,但当我使用“[]”时,它工作得很好,比如
Products?filter[where][Name][like]=%25" + valFilter + "%25&filter[where][Active]=1&filter[where][Deleted]=0"
干杯!
发布于 2020-03-09 23:40:10
有点晚了,但实际上我在寻找其他东西后发现了这个。
对于大多数人来说,问题是,有一种叫做网址编码的东西。
点击此处阅读更多信息: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,而不仅仅是字符串对象。
https://stackoverflow.com/questions/46580098
复制相似问题