Display &Video 360 中大多數的服務,Video 360 API 提供 LIST
方法,可用於大量擷取
再複習一下,機構節點
是所有 Google Cloud Platform 資源的根節點這些 LIST
方法通常支援透過
filter
查詢參數。只有在需要時,才能使用這個參數最佳化 API 使用方式
輕鬆擷取所需資料
本指南將說明如何有效使用 filter
參數。
篩選器結構
filter
參數值是字串,包含一或多項限制
可與 AND
或 OR
運算子合併使用,以及使用
限制的格式為 {field} {operator} {value}
。以下將舉例說明:
entityStatus="ENTITY_STATUS_ACTIVE"
篩選字串長度不得超過 500 個半形字元。如果您的篩選字串 超過 500 個字元,請執行下列任一動作:
- 將邏輯分割為多個篩選器字串,並使用
不同的
LIST
要求。 - 移除篩選器字串中的部分邏輯,然後使用該邏輯篩選 已擷取到本機的資源
以引號括住限制值,確保正確套用邏輯。
如要直接呼叫 LIST
而未使用 LIST
呼叫,將篩選器字串進行網址編碼
透過用戶端程式庫
如要進一步瞭解格式,請參閱「限制之間的邏輯」一文 您的查詢。
可篩選的欄位
每個 LIST
方法的可篩選欄位都會列在該方法的 filter
中
參數說明在大部分情況下,您可以篩選資源的子集
標準欄位的值在極少數的情況下,您還能使用其他欄位
。
參數說明中的每個欄位至少支援下列其中一個欄位: 比較運算子:
可比較的運算子 | ||
---|---|---|
EQUALS (=)
|
資源欄位值等於給定的值。
範例: |
|
LESS THAN OR EQUAL TO (<=)
|
資源欄位值小於或等於指定值。常用
比較日期或日期時間
範例: |
|
GREATER THAN OR EQUAL TO (>=)
|
資源欄位值大於或等於指定值。常用
比較日期或日期時間
範例: |
|
HAS (:)
|
資源欄位值含有指定值。如果資源欄位是
字串,它會檢查指定值是否為現有的子字串。如果
resource 欄位是陣列,系統會檢查陣列是否包含指定的
值。
範例: |
如果參數說明中的欄位沒有指定任何運算子,
只能使用 EQUALS (=)
運算子。部分欄位支援多個運算子。
部分可篩選欄位 (例如日期和時間的欄位)
以便遵循特定格式。格式為
filter
參數說明中的欄位。
限制之間的邏輯
您可以結合多項限制,縮小或擴大回覆範圍
LIST
要求。
您通常可以將多個限制與 AND
和 OR
搭配使用
邏輯運算子。每個 LIST
方法都會指定其支援的運算子。
部分方法僅支援在 filter
參數中使用單一限制。
使用 AND
建立篩選器字串時,請考慮下列限制
或 OR
邏輯運算子:
- 「
AND
」必須用於不同的限制條件或限制群組, 篩選不同的欄位,或以不同方式篩選同一個欄位以下 範例如下:updateTime>="2023-03-01T12:00:00Z" AND entityStatus="ENTITY_STATUS_ACTIVE"
updateTime>="2023-03-01T12:00:00Z" AND updateTime<="2023-04-01T12:00:00Z" AND (entityStatus="ENTITY_STATUS_ACTIVE" OR entityStatus="ENTITY_STATUS_PAUSED")
OR
必須與以相同方式篩選的個別限制之間 ] 欄位。範例如下:(entityStatus="ENTITY_STATUS_ACTIVE" OR entityStatus="ENTITY_STATUS_PAUSED") AND (lineItemType="LINE_ITEM_TYPE_DISPLAY_DEFAULT" OR lineItemType="LINE_ITEM_TYPE_VIDEO_DEFAULT")
您無法使用
OR
合併兩組限制。使用多個 不同篩選器值的LIST
要求。舉例來說,您可以使用 下列單獨的LIST
要求:(lineItemType="LINE_ITEM_TYPE_DISPLAY_DEFAULT" AND insertionOrderId="123")
(lineItemType="LINE_ITEM_TYPE_VIDEO_DEFAULT" AND insertionOrderId="456")
請勿使用
OR
運算子進行合併:(lineItemType="LINE_ITEM_TYPE_DISPLAY_DEFAULT" AND insertionOrderId="123") OR (lineItemType="LINE_ITEM_TYPE_VIDEO_DEFAULT" AND insertionOrderId="456")
如果未在 篩選器字串。例如,以下篩選器字串:
updateTime>="2023-03-01T12:00:00Z" AND entityStatus="ENTITY_STATUS_ACTIVE" OR entityStatus="ENTITY_STATUS_PAUSED" OR entityStatus="ENTITY_STATUS_DRAFT"
會被解讀為:
updateTime>="2023-03-01T12:00:00Z" AND (entityStatus="ENTITY_STATUS_ACTIVE" OR entityStatus="ENTITY_STATUS_PAUSED" OR entityStatus="ENTITY_STATUS_DRAFT")