跳转到主要内容
系统 API 支持 OData 过滤以检索特定的资源集。在目标 URL 中,OData 过滤器被设置为 $filter 查询参数。以下逻辑运算符可用于构建 OData 过滤器: 例如,以下 API 请求使用 gt 来检索 2019 年 8 月 26 日之后所有事务的事务日志元数据: GET http://mydomain.com:8001/api.rsc/transactions?$filter=timestamp gt 2019-08-26 OData 过滤器可与 andor 关键字结合使用。例如,以下 API 请求将检索 2019 年 8 月 26 日之后特定端口事务的所有事务日志元数据: http://mydomain.com:8001/api.rsc/transactions?$filter=timestamp gt 2019-08-26 and connectorid eq myConnector 系统 API 也支持 OData 过滤器中的以下函数:
  • startswith(property, 'value') — 仅当指定属性以指定值开头时,才返回资源
  • endswith(property, 'value') — 仅当指定属性以指定值结尾时,才返回资源
  • contains(property, 'value') — 仅当指定属性包含指定值时,才返回资源
例如,以下 API 请求用于检索应用程序处理的所有 XML 文件的事务日志元数据: GET http://mydomain.com:8001/api.rsc/transactions?$filter=contains(filepath,'.xml')

选择指定字段

除了 filter查询参数之外,还可设置filter** 查询参数之外,还可设置 **select 查询参数来限制响应中返回的特定字段。此参数应设置为需要检索的属性的逗号分隔列表。例如,以下 API 请求用于检索每个已配置端口的名称和工作区,但不检索这些端口的其他配置信息: GET http://mydomain.com:8001/api.rsc/connectors?$select=connectorid,workspace API 还支持从单个资源中检索单个值。例如,以下 API 请求返回指定端口的工作区: http://localhost:8001/api.rsc/connectors('myConnector')/workspace/$value

排序

除了 filterfilter** 和 **select 之外,还可设置 $orderby 查询参数用于将结果按照特定顺序排序。此参数用以下语法指定: $orderby=columnName sortDirection 其中,columnName 是用于排序的列(例如 filename、connectorId、timestamp),sortDirectionasc(升序)或 desc(降序)。 例如,以下 API 请求用于检索应用程序处理的所有 XML 文件的事务日志元数据,然后根据文件是 sent 还是 received 对结果进行分组: GET http://mydomain.com:8001/api.rsc/transactions?$filter=contains(filepath,'.xml')&$orderby=status asc 通过将 $orderby 参数设置为逗号分隔列表,可指定多个排序条件。列表中靠前的条件优先于列表中靠后的条件。例如,下列 API 请求与前一个请求检索相同的数据,但在 sentreceived 组中,文件按大小从大到小列出: GET http://mydomain.com:8001/api.rsc/transactions?$filter=contains(filepath,'.xml')&$orderby=status asc, filesize desc