Zdieľať cez


Spracovanie kódu stavu pomocou Web.Contents

Funkcia Web.Contents má niekoľko vstavaných funkcií na prácu s určitými kódmi stavu HTTP. Predvolené správanie je možné prepísané vo vašom rozšírení pomocou ManualStatusHandling poľa v zázname možností.

Automatické opätovné pokusy

Web.Contents automaticky zopakuje požiadavky, ktoré zlyhajú pri niektorom z nasledujúcich kódov stavu:

kód Status
408 Časový limit požiadavky
429 Príliš veľa požiadaviek
503 Služba nie je k dispozícii
504 Časový limit brány
509 Prekročený limit šírky pásma

Žiadosti sa zopakovajú až trikrát, potom zlyhajú. Nástroj používa exponenciálny spätný algoritmus na určenie dlhého čakania do ďalšieho pokusu, pokiaľ odpoveď neobsahuje hlavičku Retry-after . Keď sa hlavička nájde, nástroj počká zadaný počet sekúnd pred ďalším pokusom. Minimálny podporovaný čas čakania je 0,5 sekundy a maximálna hodnota je 120 sekúnd.

Poznámka

Hodnota Retry-after musí byť vo formáte delta-seconds . Formát HTTP-date v súčasnosti nie je podporovaný.

Výnimky overovania

Výsledkom nasledujúcich kódov stavu bude výnimka poverení, čo spôsobí výzvu na overovanie, ktorá používateľa požiada, aby poskytol poverenia (alebo sa znova prihlásil v prípade uplynutia platnosti tokenu OAuth).

kód Status
401 Neoprávnené
403 Zakázané

Poznámka

Rozšírenia môžu používať ManualStatusHandling možnosť pomocou kódov stavu 401 a 403, čo nie je niečo, čo možno vykonať vo Web.Contents volaniach mimo vlastného konektora údajov (to znamená priamo z Power Query).

Presmerovanie

Nasledujúce kódy stavu budú mať za následok automatické presmerovanie na identifikátor URI zadaný v hlavičke Location . Chýbajúca Location hlavička bude mať za následok chybu.

kód Status
300 Viaceré možnosti
301 Natrvalo presunuté
302 Našiel
303 Zobraziť iné
307 Dočasné presmerovanie

Poznámka

Iba kód stavu 307 zachová metódu POST požiadavky. Všetky ostatné kódy stavu presmerovania budú mať za následok prepnutie na GET.