ComputeRoutes()
yöntemini çağırdığınızda, yanıtta döndürülmesini istediğiniz alanları belirtmeniz gerekir. Bunu, $fields
veya fields
URL parametresini içeren bir yanıt alanı maskesi ya da X-Goog-FieldMask
HTTP/gRPC başlığını kullanarak yapabilirsiniz. Daha fazla bilgi için Sistem Parametreleri bölümüne bakın.
Alan maskesi
Alan maskesi değeri, alan yollarının virgülle ayrılmış bir listesidir. Her alan yolu, mesaj hiyerarşisini temsil eden alan adlarının noktayla ayrılmış bir listesidir. Alan adı, JSON nesne anahtarı veya protobuf alan etiketinin 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, ardından bir sonraki alan adı düzeyi gelir. 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 karakteridir.
Ö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 çoklu çizgi için alan maskesi (örnek üretim kurulumu).
X-Goog-FieldMask: routes.duration,routes.distanceMeters,routes.polyline
Joker karakter (*) yanıt alanı maskesinin kullanılmasını veya alan maskesinin üretimde üst düzeyde (yönlendirmeler) belirtilmesini teşvik etmeyiz. Sadece ihtiyacınız olan alanları seçin:
Sunucumuzun, işleme döngülerini kaydetmesini sağlar. Böylece, sonuçlarınızı daha düşük bir gecikmeyle döndürebiliriz.
İstikrarlı gecikme performansı sağlar. Gelecekte daha fazla yanıt alanı ekleyebiliriz ve bu yeni alanlar daha fazla hesaplama süresi gerektirebilir. Tüm alanları seçerseniz veya üst düzeydeki tüm alanları seçerseniz performansta düşüş yaşayabilirsiniz. Bunun nedeni, eklediğimiz yeni alanların yanıtınıza otomatik olarak dahil edilmesidir.
Yanıt boyutu daha küçük olur ve bu da ağ işleme hızını artırır.
Alan yollarının nasıl oluşturulacağı hakkında daha fazla bilgi için field_mask.proto dosyasına bakın.