Anda sedang melihat dokumentasi Apigee Edge.
Buka
Dokumentasi Apigee X. info
Gejala
Terjadi error saat membuat permintaan API aktif menggunakan SmartDocs dari developer portal.
Pesan Error
Error umum yang terlihat di Portal Developer adalah “Terjadi error internal. Ulangi permintaan Anda”.
Kemungkinan Penyebab
Error ini dapat terjadi saat Portal Developer gagal mendapatkan respons dari backend (smartdocs proxy atau endpoint yang sebenarnya).
Diagnosis
Aktifkan “Developer tools” di browser dan periksa tab jaringan untuk mengidentifikasi {i>error<i} yang sebenarnya.
Error umum dan penyebab umumnya tercantum dalam tabel berikut:
Error |
Penyebab Umum |
ERR_NAME_NOT_RESOLVED |
Proxy SmartDocs salah dikonfigurasi atau firewall jaringan pembatasan |
Konten Campuran |
Portal yang dikonfigurasi melalui HTTP, permintaan SmartDocs melalui HTTP |
500 - Kesalahan Server Internal |
Mari kita bahas satu per satu penyebab masalah tersebut dan langkah-langkah untuk mengatasi masalah tersebut.
Proxy SmartDocs salah dikonfigurasi atau firewall jaringan pembatasan
Pesan “ERR_NAME_NOT_RESOLVED” menunjukkan bahwa URL proxy smartdocs salah dikonfigurasi atau jaringan tempat portal diakses tidak dapat melakukan panggilan ke URL proxy smartdocs karena pembatasan firewall. Smartdocs proxy harus dapat diakses dari internet atau dari jaringan internal (untuk API internal).
Resolusi
Pastikan proxy smartdocs dapat diakses dari semua jaringan yang diperlukan dengan men-deploy proxy smartdocs ke host virtual di Edge dengan nama host yang dapat diakses dari internet.
Portal yang dikonfigurasi melalui HTTPS, permintaan SmartDocs melalui HTTP
Error “Konten Gabungan” menunjukkan bahwa proxy smartdocs dipanggil melalui HTTP dari laman yang dimuat melalui HTTPS.
Resolusi
Ekspos proxy smartdocs melalui https untuk menyelesaikan masalah. Anda dapat melakukannya dengan men-deploy Proxy smartdocs untuk menyertakan host virtual yang dikonfigurasi untuk menggunakan TLS/SSL (biasanya host virtual “aman”).
Proxy SmartDocs menampilkan pengecualian
Pesan 500 - Error Server Internal dapat disebabkan oleh masalah pada {i>proxy<i} “smartdocs”. Dalam hal ini, Anda memperhatikan bahwa {i> proxy<i} {i>smartdocs<i} mengembalikan {i>error<i}.
Diagnosis
Menggunakan alat Trace untuk mendiagnosis error dengan proxy “smartdocs”, seperti yang dijelaskan di bawah ini. Untuk informasi selengkapnya, lihat Menggunakan alat Rekaman Aktivitas.
- Aktifkan perekaman aktivitas untuk Proxy “smartdocs” di organisasi “VALIDATE” untuk menemukan kebijakan spesifik yang mengembalikan{i> 500 Internal Server Error<i}.
- Pilih kebijakan tertentu dalam rekaman aktivitas untuk mengidentifikasi penyebab error.
Resolusi
Perbaiki error yang teridentifikasi. Jika Anda memerlukan bantuan, hubungi Dukungan Apigee Edge.
Pemroses Pesan Edge tidak dapat memanggil endpoint API yang dipublikasikan
500 - Kesalahan Server Internal juga dapat terjadi ketika Prosesor Pesan milik organisasi yang menghosting proxy Smartdocs tidak dapat memanggil endpoint API.
Diagnosis
Menggunakan alat Trace untuk mendiagnosis error dengan proxy “smartdocs”, seperti yang dijelaskan di bawah ini. Untuk informasi selengkapnya, lihat Menggunakan alat Rekaman Aktivitas.
- Aktifkan trace untuk “smartdocs” di organisasi “VALIDATE” untuk menemukan kebijakan tertentu yang mengembalikan pesan {i> 500 Internal Server Error<i}.
- Dalam contoh trace UI yang ditampilkan di atas, terlihat bahwa kebijakan JavaScript “BuildTargetAPIRequest” gagal menjalankan URL target.
- Mendapatkan URL target dari kebijakan JavaScript “BuildTargetAPIRequest”.
- Melakukan panggilan langsung ke URL dari node Pemroses Pesan yang terkait dengan
organisasi “VALIDIDATE” seperti yang ditunjukkan di bawah:
curl -v <target URL>
- Perbaiki error yang diamati.
Resolusi
- Memastikan API yang dipublikasikan di Portal Developer dapat dipanggil dari Pemroses Pesan yang terkait dengan organisasi “VALIDATE” dan memperbaiki error temui.
- Jika Anda dapat mengeksekusi panggilan API langsung dari Pemroses Pesan, kemungkinan besar Anda juga dapat mengeksekusi API melalui SmartDocs.
- Jalankan panggilan API melalui SmartDocs dan periksa apakah masalah telah diperbaiki.