Állapotkód kezelése a Web.Contents
A Web.Contents
függvény beépített funkciókkal rendelkezik bizonyos HTTP-állapotkódok kezeléséhez. Az alapértelmezett viselkedés felülbírálása a bővítményben a ManualStatusHandling
beállításrekord mezőjének használatával lehetséges.
Automatikus újrapróbálkozás
Web.Contents
automatikusan újrapróbálkoznak a sikertelen kérelmek az alábbi állapotkódok egyikével:
Kód | Állapot |
---|---|
408 | Kérelem időtúllépése |
429 | Túl sok kérés |
503 | A szolgáltatás nem érhető el |
504 | Átjáró időtúllépése |
509 | Sávszélességkorlát túllépve |
A kéréseket a rendszer a sikertelenség előtt legfeljebb háromszor újrapróbálkozza. A motor exponenciális háttéralgoritmussal határozza meg, hogy mennyi ideig kell várni a következő újrapróbálkozásra, kivéve, ha a válasz fejlécet Retry-after
tartalmaz. A fejléc megtalálásakor a motor a megadott számú másodpercet várja meg a következő újrapróbálkozás előtt. A minimálisan támogatott várakozási idő 0,5 másodperc, a maximális érték pedig 120 másodperc.
Megjegyzés:
Az Retry-after
értéknek formátumban delta-seconds
kell lennie. A HTTP-date
formátum jelenleg nem támogatott.
Hitelesítési kivételek
Az alábbi állapotkódok hitelesítő adatokkal kapcsolatos kivételt eredményeznek, ami egy hitelesítési kérést eredményez, amely arra kéri a felhasználót, hogy adja meg a hitelesítő adatokat (vagy jelentkezzen be újra lejárt OAuth-jogkivonat esetén).
Kód | Állapot |
---|---|
401 | Unauthorized |
403 | Forbidden |
Megjegyzés:
A bővítmények a 401- és a 403-as állapotkódokkal is használhatják ezt a ManualStatusHandling
lehetőséget, ami az egyéni adatösszekötőn kívül (azaz közvetlenül a Power Queryből) indított hívások esetén Web.Contents
nem végezhető el.
Átirányítás
Az alábbi állapotkódok automatikus átirányítást eredményeznek a fejlécben Location
megadott URI-ra. Egy hiányzó Location
fejléc hibát fog eredményezni.
Kód | Állapot |
---|---|
300 | Több választási lehetőség |
301 | Véglegesen áthelyezve |
302 | Található |
303 | Lásd: Egyéb |
307 | Ideiglenes átirányítás |
Megjegyzés:
Csak a 307-ben megadott állapotkód őriz meg egy kérelemmetódust POST
. Minden más átirányítási állapotkód a következőre GET
vált.