在Reactor API中篩選回應
在Reactor API中使用清單(GET)端點時,您可能會發現有必要將傳回的結果限製為記錄子集。 為了完成這點,許多API的清單端點都支援依特定屬性篩選的功能。 如果您想改向API提出結構化查詢,請參閱以下指南: 搜尋.
篩選語法
以下範例說明如何為GET請求實作篩選器。
API格式
若要篩選指定清單端點的回應,您必須提供 filter
請求路徑中的查詢引數。
NOTE
下面的範本使用方括弧(
[]
)和空格字元來增加可讀性。 實際上,這些字元必須是URI編碼,如中所述 RFC 3986. 本指南稍後會顯示正確編碼的請求路徑的範例。請注意,如果篩選器的結構不正確,則不會套用任何篩選器並傳回完整結果集。
GET {ENDPOINT}?filter[{ATTRIBUTE_NAME}]={OPERATOR} {VALUE}
屬性
說明
{ENDPOINT}
Reactor API中支援篩選引數的清單端點。
{ATTRIBUTE_NAME}
篩選結果所依據的特定屬性的名稱。 請記住,不同的端點支援不同的篩選屬性。 如需可用篩選屬性的清單,請參閱您正在使用的端點的參考指南。
{OPERATOR}
決定如何根據提供的評估結果的運運算元
{VALUE}
. 支援的運運算元列於 附錄部分.{VALUE}
用來比較傳回結果的值。 使用比較相等時
EQ
運運算元,值必須是完全相符且區分大小寫的專案,才能包含在回應中。要求
以下範例請求會套用篩選器(需要程式庫的),以擷取已發佈程式庫的清單 state
屬性等於 published
.
在URI編碼之前,請求路徑中此篩選器的語法如下所示:
https://reactor.adobe.io/properties/PR906238a59bbf4262bcedba248f483600/libraries?filter[state]=EQ published
路徑和查詢引數經過URI編碼後,便可用於API請求,如下所示:
curl -X GET \
https://reactor.adobe.io/properties/PR906238a59bbf4262bcedba248f483600/libraries?filter%5Bstate%5D=EQ%20published \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {ORG_ID}'
篩選多個值 multiple-values
若要依單一屬性的多個值篩選,請以逗號分隔清單的形式提供這些值。
GET {ENDPOINT}?filter[{ATTRIBUTE_NAME}]={OPERATOR} {VALUE_1},{VALUE_2}
使用多個篩選器
若要套用多個屬性的篩選器,請提供 filter
每個屬性的引數。 引數必須以&符號分隔(&
)個字元。
GET {ENDPOINT}?filter[{ATTRIBUTE_NAME_1}]={OPERATOR} {VALUE}&filter[{ATTRIBUTE_NAME_2}]={OPERATOR} {VALUE}
NOTE
如果您在相同要求的多個篩選條件中指定相同的屬性,則只會套用最後為該屬性提供的篩選條件。
附錄
下節包含在Reactor API中使用篩選器的其他資訊。
支援的篩選器運運算元 operators
下表列出篩選引數支援的運運算元值。 請記住,根據您篩選依據的屬性,並非所有可用的篩選運運算元都適用,例如對字串屬性使用「小於」或「大於」運運算元。
運算子
說明
EQ
屬性必須等於提供的值。
NOT
屬性不得等於提供的值。
LT
屬性必須小於提供的值。
GT
屬性必須大於提供的值。
BETWEEN
屬性必須落在指定的值範圍內。 使用此運運算元時, 兩個值 必須提供以指示所需範圍的最小值和最大值。
CONTAINS
屬性必須包含提供的值,例如字串屬性中的一組字元。
recommendation-more-help
12b4e4a9-5028-4d88-8ce6-64a580811743