如何将 where 过滤器添加到 IBM API Connect 设计器中的路径

How to add a where filter to a path in IBM API Connect designer

我正在使用 IBM API Connect designer,我想在我的路径之一中添加过滤器。具体来说,我有以下 API 端点路径:

http://127.0.0.1:4001/api/testusers

它与我的 mySQL 数据库中的一个 table 有关。

我已经构建了完整的 API,但想让 API 消费者进行简单的 restful 搜索:即

http://127.0.0.1:4001/api/testusers?userName=Martin

但是,我不知道该怎么做。我查看了文档: http://www.ibm.com/support/knowledgecenter/SSMNED_5.0.0/com.ibm.apic.toolkit.doc/task_apionprem_configure_operation.html

我试图在他们不可能的论坛上记录一个问题,但每次都崩溃。

我认为从设计器中添加一定非常简单。但是,我无法解决,或者我可能已经添加了它并且无法找到正确的使用路径。但是,无论哪种方式,它都不起作用。任何方向都非常感谢。

此处给出设计器设置:

有几个选项可用。

既然你谈到了与数据库的连接,我假设你也在使用 Designer 的模型和数据源功能(如果我有误解,请随时纠正)。

这些组件由 LoopBack 框架提供。因此,无需进行任何自定义编码,您应该能够以 filter[where][property]=value.

格式将 filter 子句作为查询参数添加到 API 调用中

因此,在您的情况下,它可能看起来像:http://127.0.0.1:4001/api/testusers?filter[where][userName]=Martin

此处有更多详细信息:http://loopback.io/doc/en/lb2/Where-filter.html

如果您想让它看起来更像您的示例,那么您需要在您的基础模型中编写自定义代码。这并不困难,但确实有一些学习曲线。这里有很多文档:http://loopback.io/doc/en/lb2/Remote-methods.html and http://loopback.io/doc/en/lb2/Creating-models.html