使用的狀態代碼處理 Web.Contents
函 Web.Contents
式有一些內建功能,可用於處理特定 HTTP 狀態代碼。 您可以使用選項記錄中的欄位,在您的延伸模組ManualStatusHandling
中覆寫預設行為。
自動重試
Web.Contents
會自動重試失敗的要求,並包含下列其中一個狀態代碼:
代碼 | 狀態 |
---|---|
408 | 要求逾時 |
429 | 過多要求 |
503 | 服務無法使用 |
504 | 閘道逾時 |
509 | 超過頻寬限制 |
要求會在失敗之前重試最多三次。 除非回應包含 Retry-after
標頭,否則引擎會使用指數輪詢演算法來判斷等待下一次重試的時間長度。 找到標頭時,引擎會在下次重試之前等候指定的秒數。 支援的等候時間下限為0.5秒,最大值為120秒。
注意
值 Retry-after
必須是 delta-seconds
格式。 HTTP-date
目前不支援格式。
驗證例外狀況
下列狀態代碼會導致認證例外狀況,導致驗證提示要求使用者提供認證(或在 OAuth 令牌過期的情況下再次登入)。
代碼 | 狀態 |
---|---|
401 | 未經授權 |
403 | 禁止 |
注意
擴充功能可以使用 ManualStatusHandling
狀態代碼 401 和 403 的選項,這在自定義數據連接器外部的呼叫中無法完成 Web.Contents
,也就是直接從 Power Query 完成。
重新導向
下列狀態代碼會導致自動重新導向至標頭中指定的 Location
URI。 遺漏 Location
的標頭會導致錯誤。
代碼 | 狀態 |
---|---|
300 | 多重選擇 |
301 | 永久移動 |
302 | 已找到 |
303 | 請參閱其他 |
307 | 暫時重新導向 |
注意
只有狀態代碼 307 會保留 POST
要求方法。 所有其他重新導向狀態代碼都會切換至 GET
。