Bagikan melalui


Penanganan Kode Status dengan Web.Contents

Fungsi ini Web.Contents memiliki beberapa fungsionalitas bawaan untuk menangani kode status HTTP tertentu. Perilaku default dapat ditimpa di ekstensi Anda menggunakan ManualStatusHandling bidang di rekaman opsi.

Coba lagi otomatis

Web.Contents akan secara otomatis mencoba kembali permintaan yang gagal dengan salah satu kode status berikut:

Kode Status
408 Waktu permintaan habis
429 Terlalu Banyak Permintaan
503 Layanan Tidak Tersedia
504 Waktu Tunggu Gateway Habis
509 Batas Bandwidth Terlampaui

Permintaan akan dicoba ulang hingga tiga kali sebelum gagal. Mesin menggunakan algoritma back-off eksponensial untuk menentukan berapa lama menunggu hingga coba lagi berikutnya, kecuali respons berisi Retry-after header. Ketika header ditemukan, mesin akan menunggu jumlah detik yang ditentukan sebelum coba lagi berikutnya. Waktu tunggu minimum yang didukung adalah 0,5 detik, dan nilai maksimumnya adalah 120 detik.

Catatan

Nilai Retry-after harus dalam delta-seconds format . HTTP-date Format saat ini tidak didukung.

Pengecualian autentikasi

Kode status berikut akan menghasilkan pengecualian kredensial, menyebabkan permintaan autentikasi yang meminta pengguna untuk memberikan kredensial (atau masuk lagi dalam kasus token OAuth yang kedaluwarsa).

Kode Status
401 Tidak diizinkan
403 Terlarang

Catatan

Ekstensi dapat menggunakan ManualStatusHandling opsi dengan kode status 401 dan 403, yang bukan sesuatu yang dapat dilakukan dalam panggilan yang dilakukan di Web.Contents luar konektor data kustom (yaitu, langsung dari Power Query).

Pengalihan

Kode status berikut akan menghasilkan pengalihan otomatis ke URI yang ditentukan di Location header. Header yang hilang Location akan mengakibatkan kesalahan.

Kode Status
300 Pilihan Ganda
301 Dipindahkan secara permanen
302 Ditemukan
303 Lihat Lainnya
307 Pengalihan Sementara

Catatan

Hanya kode status 307 yang POST akan menyimpan metode permintaan. Semua kode status pengalihan lainnya akan mengakibatkan pengalihan ke GET.