Verwerking van statuscode met Web.Contents

De Web.Contents functie heeft een aantal ingebouwde functionaliteit voor het omgaan met bepaalde HTTP-statuscodes. Het standaardgedrag kan worden overschreven in uw extensie met behulp van het ManualStatusHandling veld in de optiesrecord.

Automatisch opnieuw proberen

Web.Contents zal aanvragen die mislukken automatisch opnieuw proberen met een van de volgende statuscodes:

Code Status
408 Time-out aanvraag
429 Te veel aanvragen
503 Service niet beschikbaar
504 Time-out van gateway
509 Bandbreedtelimiet overschreden

Aanvragen worden maximaal drie keer opnieuw geprobeerd voordat het mislukt. De engine maakt gebruik van een exponentieel back-off-algoritme om te bepalen hoe lang moet worden gewacht tot de volgende nieuwe poging, tenzij het antwoord een Retry-after header bevat. Wanneer de header wordt gevonden, wacht de engine het opgegeven aantal seconden voordat de volgende nieuwe poging wordt uitgevoerd. De minimaal ondersteunde wachttijd is 0,5 seconden en de maximumwaarde is 120 seconden.

Notitie

De Retry-after waarde moet de delta-seconds notatie hebben. De HTTP-date indeling wordt momenteel niet ondersteund.

Verificatie-uitzonderingen

De volgende statuscodes resulteren in een uitzondering voor referenties, waardoor een verificatieprompt wordt gevraagd om referenties op te geven (of meld u opnieuw aan in het geval van een verlopen OAuth-token).

Code Status
401 Niet geautoriseerd
403 Verboden

Notitie

Extensies kunnen de ManualStatusHandling optie gebruiken met statuscodes 401 en 403, wat niet kan worden gedaan in Web.Contents aanroepen buiten een aangepaste gegevensconnector (dat wil gezegd, rechtstreeks vanuit Power Query).

Omleiding

De volgende statuscodes resulteren in een automatische omleiding naar de URI die is opgegeven in de Location header. Een ontbrekende Location header resulteert in een fout.

Code Status
300 Meerdere opties
301 Permanent verplaatst
302 Gevonden
303 Zie overige
307 Tijdelijke omleiding

Notitie

Alleen statuscode 307 houdt een POST aanvraagmethode bij. Alle andere omleidingsstatuscodes resulteren in een switch naar GET.