Isochrones API, standart Google Cloud google.rpc.Status JSON biçimini kullanarak hataları döndürür:
{
"error": {
"code": 400,
"message": "Violation in GenerateIsochroneRequest.travel_duration: travel_duration must be at least 1 second and not exceed 3600 seconds (60 minutes) for DRIVE or TWO_WHEELER mode or 7200 seconds (120 minutes) for other modes",
"status": "INVALID_ARGUMENT"
}
}
Hataları programatik olarak işlemek için status (veya HTTP code) alanını kullanın. message metni geliştiriciler için tasarlanmıştır ve değişebilir. Bu nedenle ayrıştırmayın.
Isochrones API ile çalışırken aşağıdaki yaygın hata durum kodlarıyla karşılaşabilirsiniz:
400 INVALID_ARGUMENT: İstek, geçersiz parametreler veya hatalı biçimlendirilmiş söz dizimi içeriyor:- Süre sınırları:
travelDurationdeğerinin en az"1s"olduğundan,"s"ile bittiğinden (ör."1800s") ve mod sınırını aşmadığından emin olun:DRIVEveTWO_WHEELERiçin3600s(60 dakika) veyaWALKveBICYCLEiçin7200s(120 dakika). Sıfır ("0s"), negatif değerler ve 1 saniyenin altındaki saniye altı değerler (ör."0.5s") reddedilir. - Trafik tercihi:
travelMode,WALKveyaBICYCLEolduğundaroutingPreferencedeğerininTRAFFIC_AWAREolarak ayarlanmadığından emin olun. Canlı trafik yalnızcaDRIVEveTWO_WHEELERiçin desteklenir. - Zorunlu enum'lar: Hem
travelModehem detravelDirection'nin (FROMveyaTO) belirtildiğinden ve*_UNSPECIFIEDolarak ayarlanmadığından emin olun. - Başlangıç koordinatları (
location): Hemlatitude([-90, 90]cinsinden) hem delongitude([-180, 180]cinsinden) değerlerini ayarlayın. Atlanan bir alan, hata olmadan0olarak değerlendirilir: Her ikisinin de atlanması, reddedilen(0, 0)değerini verir; yalnızcalatitudedeğerinin atlanması başlangıç noktasını Ekvator'a, yalnızcalongitudedeğerinin atlanması ise başlangıç meridyenine yerleştirir. - Yer kimliği biçimi (
place):placedeğerinin bir yer kimliği veyaplaces/{place_id}kaynak adı (ör."places/ChIJIQBpAG2ahYAR_6128GcTUEo") olduğundan, ek yol segmentleri içermediğinden ve geçerli bir yer kimliğine başvurduğundan emin olun. - Alan maskesi (
X-Goog-FieldMask): Sağlanırsa başlık,isochrone,isochrone.geoJsonveya*gibi geçerli yanıt yollarına referans vermelidir. - Geçersiz API anahtarı (
API_KEY_INVALID):X-Goog-Api-Keyveya?key=içinde hatalı biçimlendirilmiş ya da tanınmayan bir API anahtarı,API_KEY_INVALIDnedeniyle400 INVALID_ARGUMENTdöndürür.
- Süre sınırları:
403 PERMISSION_DENIED: Kimlik doğrulama veya yetkilendirme başarısız oldu:- İstekte kimlik doğrulama bilgileri (
X-Goog-Api-Key,?key=veyaAuthorization: Bearerjetonu) sağlanmadı. - Isochrones API (
isochrones.googleapis.com) Google Cloud projenizde etkinleştirilmemiş veya faturalandırma etkinleştirilmemiş. - API anahtarınızda,
isochrones.googleapis.comiçin istekleri engelleyen API hedefi, IP adresi veya HTTP yönlendiren kısıtlamaları var.
- İstekte kimlik doğrulama bilgileri (
404 NOT_FOUND: Başlangıç noktası çözümlenemedi veya yol ağına tutturulamadı:placebir konumla eşleştirilemedi. Yer kimliğinin geçerli ve güncel olup olmadığını kontrol edin.- Başlangıç noktası
locationveyaplaceağırlık merkezi, modla uyumlu bir yol segmentine maksimum yakalama mesafesinden (yaklaşık 200 metre veyaWALKveBICYCLEiçin daha az) daha uzakta. Koordinatı bir devlet yoluna yaklaştırın veya büyük bir park ya da önemli yer kimliği yerine yol girişi koordinatlarını iletin. - Koordinat, yol verisi olmayan bir alandadır (ör. açık okyanus).
429 RESOURCE_EXHAUSTED: Projeniz, dakika başına kota sınırını (varsayılan olarak dakikada 300 istek) aştı:{ "error": { "code": 429, "message": "Quota exceeded for quota metric 'Requests' and limit 'Requests per minute' of service 'isochrones.googleapis.com'.", "status": "RESOURCE_EXHAUSTED" } }İstemci istek hızlarını kısıtlayın ve rastgele gecikme ile eksponansiyel geri yükleme kullanarak
429yanıtlarını yeniden deneyin.503 UNAVAILABLE: Hizmet geçici olarak kullanılamıyor veya aşırı yüklü. Eksponansiyel geri yükleme kullanarak isteği yeniden deneyin.500 INTERNAL: Arka uç zaman aşımı gibi dahili bir sunucu hatası oluştu. Eksponansiyel geri yükleme kullanarak isteği yeniden deneyin.