Share via


Behandlung von Statuscodes mit Web.Contents

Die Web.Contents Function verfügt über einige integrierte Funktionen für den Umgang mit bestimmten HTTP-Statuscodes. Das Standardverhalten kann in Ihrer Erweiterung über das ManualStatusHandling Feld im Optionsdatensatz außer Kraft gesetzt werden.

Automatischer Wiederholungsversuch

Web.Contents wird automatisch Anforderungen wiederholen, die mit einem der folgenden Statuscodes fehlschlagen:

Code Status
408 Anforderungstimeout
429 Zu viele Anforderungen
503 Dienst nicht verfügbar
504 Gateway-Timeout
509 Bandbreitenlimit überschritten

Die Anforderungen werden bis zu drei Mal wiederholt, bevor sie fehlschlagen. Das Modul verwendet einen exponentiellen Back-Off-Algorithmus, um zu bestimmen, wie lange es bis zum nächsten Wiederholungsversuch warten muss, es sei denn, die Antwort enthält einen Retry-after Header. Wenn der Header gefunden wird, wartet das Modul die angegebene Anzahl von Sekunden, bevor es den nächsten Versuch unternimmt. Die minimale unterstützte Wartezeit ist 0,5 Sekunden und der maximale Wert ist 120 Sekunden.

Hinweis

Der Retry-after Wert muss im delta-seconds Format angegeben werden. Das HTTP-date Format wird zurzeit nicht unterstützt.

Ausnahmen bei der Authentifizierung

Die folgenden Statuscodes führen zu einer Ausnahme bei den Anmeldeinformationen, die eine Authentifizierungsaufforderung auslöst, in der der Benutzer aufgefordert wird, seine Anmeldeinformationen anzugeben (oder sich im Falle eines abgelaufenen OAuth-Tokens erneut anzumelden).

Code Status
401 Nicht autorisiert
403 Verboten

Hinweis

Erweiterungen können die ManualStatusHandling Option mit den Statuscodes 401 und 403 verwenden, was bei Web.Contents Aufrufen außerhalb eines benutzerdefinierten Datenkonnektors (d. h. direkt aus Power Query) nicht möglich ist.

Umleitung

Die folgenden Statuscodes führen zu einer automatischen Weiterleitung zu der im Location Header angegebenen URL. Ein fehlender Location Header führt zu einem Fehler.

Code Status
300 Mehrere Auswahlmöglichkeiten (Multiple Choises)
301 Permanent verschoben
302 Gefunden
303 Siehe Sonstiges
307 Temporäre Umleitung

Hinweis

Nur der Statuscode 307 behält eine POST Anforderung als Methode. Alle anderen Redirect-Statuscodes führen zu einem Wechsel zu GET.