Error
Jika terjadi error, isi respons error format standar akan ditampilkan dan kode status HTTP akan ditetapkan ke status kesalahan.
Respons berisi objek dengan satu objek error
dengan hal-hal berikut
kunci:
code
: Ini sama dengan status HTTP respons.message
: Deskripsi singkat error.status
: Kode status yang menunjukkan sifat error.
Misalnya, mengirim parameter placeId
yang tidak valid akan menampilkan hal berikut
{i>error<i}:
{ "error": { "code": 400, "message": "\"placeId\" value is malformed: \"aChIJqaknMTeuEmsRUYCD5Wd9ARM\"", "status": "INVALID_ARGUMENT" } }
Kemungkinan kesalahan meliputi:
Kode | Status | Pesan | Pemecahan masalah |
---|---|---|---|
400 | INVALID_ARGUMENT |
Kunci yang Anda berikan tidak valid. | Kunci API Anda tidak valid atau tidak disertakan dalam permintaan. Pastikan Anda telah menyertakan seluruh kunci, dan bahwa Anda telah mengaktifkan API untuk kunci ini. |
400 | INVALID_ARGUMENT |
"\"jalur\" berisi nilai yang tidak valid: ☃" | Permintaan Anda berisi argumen yang tidak valid. Penyebab yang paling mungkin
error ini adalah:
Error ini tidak akan ditampilkan jika |
403 | PERMISSION_DENIED |
Permintaan yang tidak terdaftar diblokir. Daftar menggunakan Google Developers Konsol Play. | Permintaan ditolak karena satu atau beberapa alasan berikut:
Untuk menggunakan produk Google Maps Platform, penagihan harus diaktifkan di akun Anda, dan semua permintaan harus menyertakan kunci API yang valid. Untuk memperbaikinya, lakukan langkah-langkah berikut:
|
404 | NOT_FOUND |
HTTPS diperlukan untuk layanan ini. | Pastikan Anda mengirim permintaan ke
https://roads.googleapis.com/ dan bukan
http://roads.googleapis.com/ . |
429 | RESOURCE_EXHAUSTED |
Permintaan dibatasi karena batas permintaan project tercapai. | Anda telah melebihi batas permintaan yang dikonfigurasi di Konsol Google Cloud Platform. Batas ini biasanya ditetapkan sebagai permintaan per hari, permintaan per 100 detik, dan permintaan per 100 detik per pengguna. Batas ini harus dikonfigurasi untuk mencegah satu atau sekelompok kecil pengguna agar tidak kehabisan kuota harian, namun tetap memungkinkan akses ke semua pengguna. Lihat Membatasi Penggunaan API untuk mengonfigurasi batas ini. |
Backoff eksponensial
Jika permintaan gagal, pastikan Anda mencoba lagi permintaan dengan permintaan eksponensial {i>backoff<i}. Contohnya, jika permintaan gagal satu kali, coba lagi setelah satu detik, jika permintaan gagal lagi, coba lagi setelah dua detik, lalu empat detik, dan seterusnya. Ini memastikan bahwa permintaan yang rusak atau kegagalan berskala luas tidak membanjiri server yang lebih besar, karena banyak klien yang mencoba mencoba ulang permintaan dengan sangat cepat.
FAQ pemecahan masalah
Masalah penerapan
- Seberapa sering saya harus mengambil sampel lokasi kendaraan?
- Sebaiknya setiap 1–10 detik untuk mendapatkan hasil foto yang berkualitas tinggi.
- Apakah ada batas jumlah poin yang dapat saya kirim per kueri?
- Ya, kueri dapat memiliki maksimal 100 poin.
- Tingkat presisi apa yang harus saya gunakan untuk menyimpan lintang/bujur yang diperkuat pasangan?
- Untuk memastikan jalur yang diikat mengikuti jalan di semua tingkat zoom, bahkan pada tingkat zoom maksimum, Anda harus menyimpan pasangan garis lintang/bujur yang dipaskan pada 7 tempat desimal presisi.
- Bisakah saya menggunakan polyline yang dienkode untuk menampilkan jalur yang diikat?
- Polyline yang dienkodekan hanya ditentukan dengan presisi 5 angka desimal, yang menghasilkan kesalahan sekitar 2 meter. Dengan demikian, polyline yang dienkode tidak cocok jika Anda ingin jalur yang diikat mengikuti jalan dengan zoom tinggi level organisasi.
Masalah umum
- Beberapa titik tidak diikat, atau saya memiliki celah di jalur yang diikat. Bagaimana cara Saya mengoreksi ini?
-
- Jika Anda mengambil sampel poin pada interval waktu, pastikan poin Anda diambil sampelnya dengan interval yang lebih pendek (setiap 1-10 detik). Jika interval yang lebih panjang digunakan (misalnya 60 detik), algoritma paskan-ke-jalan mungkin tidak bisa menentukan jalan yang ditempuh dengan akurasi yang memadai.
- Jika Anda mengklik peta secara manual untuk membuat titik, sangat mudah untuk membuat jalur dengan beberapa titik atau titik renggang yang oleh algoritma snap tidak dapat ditangani dengan baik. Algoritma pengepasan berfungsi paling baik untuk titik yang berdekatan. Coba perintah Paskan ke Demo jalan atau gunakan Jalan inspector untuk menguji jalur Anda.
- Mengapa jalur yang saya ambil bergerigi atau sedikit menyimpang dari jalan ketika saya perbesar?
-
- Apakah Anda memotong presisi pasangan garis lintang/bujur yang diikat sebelum menampilkannya? Menyimpan pasangan garis lintang/bujur yang diikat pada presisi kurang dari 7 titik desimal menyebabkan kesalahan presisi ketika jalur yang diikat ditampilkan pada peta.
- Apakah Anda menggunakan polyline yang dienkode? Polyline yang dienkode terpotong pasangan garis lintang/bujur menjadi 5 tempat desimal, yang menyebabkan kesalahan hingga beberapa meter, mengakibatkan garis bergerigi atau sedikit lepas dari jalan pada tingkat zoom tinggi.
Jika kedua hal di atas tidak terjadi, petak peta mungkin telah diperbarui akhir-akhir ini, menyebabkannya menjadi tidak sinkron dengan indeks jalan yang digunakan untuk mengepaskan. Jika hanya beberapa kueri Anda yang terpengaruh, kemungkinan ini adalah penyebabnya. Karena Google Maps diperbarui secara rutin, hal ini dapat terjadi sesekali, dan dapat terjadi lebih sering jika Anda rutin melihat jalur lama pada peta (untuk misalnya, jalur yang diikat beberapa minggu lalu). Untuk mendapatkan visualisasi yang optimal, Anda harus mengambil kembali jalur lama sebelum menampilkannya pada peta, untuk meminimalkan inkonsistensi antara ubin peta dan indeks jalan yang digunakan untuk mengepaskan.
- Apa yang dapat menyebabkan batas kecepatan jalan X ditampilkan dengan tidak benar?
- Batas kecepatan berasal dari beberapa sumber yang akurasi dan cakupannya bervariasi.
Jika Anda menemukan pola, misalnya batas kecepatan untuk jenis jalan tertentu atau
di area tertentu yang terus-menerus salah, lakukan langkah-langkah berikut
untuk memberi tahu kami:
- Buka Google Maps di komputer desktop ATAU aplikasi Google Maps untuk Android.
- Buka menu sebelah kiri.
- Pilih Kirim masukan. Catatan: Anda mungkin akan diminta untuk login.
- Pilih Edit peta.
- Pilih segmen jalan yang ingin Anda edit.
- Pilih Berikutnya.
- Di bagian "Lainnya" , menunjukkan bahwa batas kecepatan salah untuk jalan tersebut.
- Pilih Kirim.
- Kenapa saya mengambil tikungan jalan pintas alih-alih mengikuti jalan?
-
Untuk memperbaiki masalah ini, periksa hal berikut:
- Pastikan parameter
interpolate
ditetapkan ketrue
. - Pastikan titik data asli Anda diambil sampelnya dengan interval yang cukup mendekati (setiap 1-10 detik).
- Pastikan parameter
- Mengapa saya mendapatkan banyak segmen jalan yang dikembalikan ke jalur yang telah diikat untuk jalan tanpa perubahan batas kecepatan?
- Jika parameter
interpolate
disetel ketrue
, kueri {i>snap-to-road<i} mengembalikan polyline yang mengikuti jalan di sekitar sudut, kurva, dan bundaran. Jika jalannya melengkung, beberapa segmen jalan ditampilkan meskipun batas kecepatan tidak berubah, untuk membuat polyline yang mengikuti geometri jalan.