欄位遮罩可讓 API 呼叫端列出要求應傳回的欄位。使用欄位遮罩可讓 API 避免執行不必要的作業,並提高效能。
欄位遮罩可指定為網址查詢參數,或是 HTTP 或 gRPC 標頭:
網址查詢參數 | HTTP 或 gRPC 標頭 |
---|---|
$fields 或 fields |
X-Goog-FieldMask |
欄位遮罩語法
下列欄位遮罩範例以這個範例回應類型為基礎。
message ExampleResponse {
message Foo {
string foo1 = 1;
string foo2 = 2;
Bar foo3 = 3;
}
message Bar {
string bar1 = 1;
string bar2 = 2;
string bar3 = 3;
}
string field1 = 1;
repeated Foo field2 = 2;
}
您可以使用點語法,或是以括號括住巢狀欄位。
運算式 | 輸出內容 |
---|---|
* |
傳回所有欄位和巢狀欄位。 |
field1,field2 |
傳回 field1 和 field2 的所有巢狀欄位。 |
field1,field2.foo1 |
傳回 field1 和 field2.foo1 。 |
field1,field2(foo1) |
傳回 field1 和 field2.foo1 。 |
field1,field2(foo1,foo2)
|
傳回:field1 field2.foo1 field2.foo2 |
field1,field2(foo1,foo3(bar1,bar2))
|
傳回:field1 field2.foo1 field2.foo3.bar1 field2.foo3.bar2 |