ComputeRoutes()
yöntemini çağırırken yanıtta döndürülmesini istediğiniz alanları belirtmeniz gerekir. Bunu, URL parametresi $fields
veya fields
ile sağladığınız bir yanıt alanı maskesi kullanarak ya da HTTP/gRPC başlığı X-Goog-FieldMask
'yi kullanarak yaparsınız. Daha fazla bilgi için Sistem Parametreleri başlıklı makaleyi inceleyin.
Alan maskesi
Alan maskesi değeri, virgülle ayrılmış bir alan yolu listesidir. Her alan yolu, mesaj hiyerarşisini temsil eden noktayla ayrılmış bir alan adları listesidir. Alan adı, JSON nesne anahtarı veya protobuf alan etiketi adıdır. Alan yolu, üst düzey yanıt mesajı türünden başlar ve isteğe bağlı olarak bir veya daha fazla nokta ve ardından bir sonraki düzey alan adından oluşur. Genel olarak alan yolları aşağıdaki şekilde oluşturulur:
topLevelField[.secondLevelField][.thirdLevelField][...]
Özel durum alan maskesi, tüm kök düzeyindeki alanları seçen bir joker karakter ("*") bağımsız değişkenidir.
Örnekler
Aşağıdaki örnekte, ComputeRoutes()
yöntemi için alan maskelerinin nasıl ayarlanacağı gösterilmektedir.
1. Örnek
Mevcut tüm alanların alan maskesi (manuel inceleme için).
X-Goog-FieldMask: *
2. Örnek
Rota düzeyinde süre, mesafe ve poli çizgisi alan maskesi (örnek üretim kurulumu).
X-Goog-FieldMask: routes.duration,routes.distanceMeters,routes.polyline
Üretimde joker karakter (*) yanıt alanı maskesinin kullanılması veya alan maskesinin üst düzeyde (rotalar) belirtilmesi önerilmez. Yalnızca ihtiyacınız olan alanları seçin:
Sunucumuzun işlem döngülerini kaydetmesine olanak tanır. Böylece, sonuçlarınızı daha düşük gecikme süresiyle döndürebiliriz.
İstikrarlı gecikme performansı sağlar. Gelecekte daha fazla yanıt alanı ekleyebiliriz ve bu yeni alanlar için ek hesaplama süresi gerekebilir. Tüm alanları veya üst düzeydeki tüm alanları seçerseniz ekleyeceğimiz yeni alanlar yanıtınıza otomatik olarak dahil edileceğinden performansta düşüş yaşayabilirsiniz.
Daha küçük bir yanıt boyutuna neden olur ve bu da daha yüksek ağ çıkışına dönüşür.
Alan yollarının nasıl oluşturulacağı hakkında daha fazla bilgi için field_mask.proto dosyasını inceleyin.