Sdílet prostřednictvím


Kódy chyb rozhraní API služby žádosti

Ověřené ID Microsoft Entra zahrnuje rozhraní REST API služby žádosti, které umožňuje vydávat a ověřovat přihlašovací údaje. Tento článek určuje kódy chyb pro rozhraní API vyžádané služby.

Objekt chyby

Ve verzi Public Preview rozhraní API služby požadavku vrátilo chyby v následujícím formátu.

{
  "requestId": "4bb6726f77af7623ab52962323016442",
  "date": "Thu, 28 Apr 2022 14:30:54 GMT",
  "mscv": "17ppwf3uxR10MfRR.1",
  "error": {
    "code": "client_request.invalid_include_qr_code",
    "message": "The request contains `includeQRCode`, but it is not boolean."
  }
}

Tento formát se teď změní na následující, aby bylo možné snadněji zpracovávat chyby a lépe podporovat řešení potíží. V novém formátu mají vnější chyba kód a pole zpráv standardizované hodnoty, zatímco objekt innererror poskytuje podrobnosti o příčině chyby.

{
  "requestId": "782628eb-503a-4978-84f2-d7c634f25b15",
  "date": "Fri, 29 Apr 2022 11:20:19 GMT",
  "mscv": "QbBLwF7XAp0dt4Lw.1",
  "error": {
    "code": "badRequest",
    "message": "The request is invalid.",
    "innererror": {
      "code": "badOrMissingField",
      "message": "The request contains `includeQRCode`, but it is not boolean.",
      "target": "includeQRCode"
    }
  }
}
Vlastnost Typ Popis
requestId řetězec ID automaticky vygenerovaného požadavku.
date rande Čas chyby.
mscv řetězec Interní kód Microsoftu.
error Chyba Vnější objekt chyby

Typ chyby

Objekt error teď odpovídá stavovém kódu HTTP vráceného voláním rozhraní API, aby bylo možné vývojářům usnadnit zpracování chyb.

Vlastnost Typ Popis
code řetězec Návratový kód chyby odpovídající stavovém kódu HTTP.
message řetězec Standardizovaná chybová zpráva, která je závislá také na vrácený stavový kód HTTP.
innererror innererror Zadejte podrobnosti o příčině chyby.

Kódy chyb a zprávy

Níže jsou uvedené možné hodnoty nejvyšší úrovně code, které se mapují na různé vrácené stavové kódy HTTP.

Stavový kód HTTP kód zpráva
400 badRequest Požadavek je neplatný.
401 neautorizovaný Požadovaný prostředek vyžaduje ověření.
403 zakázaný Chybí oprávnění ke splnění této žádosti.
404 notFound Požadovaný prostředek neexistuje.
405 methodNotAllowed Požadovaná metoda není u požadovaného prostředku povolená.
406 notAcceptable Požadovaný formát odpovědi není podporován.
408 requestTimeout Vypršel časový limit požadavku.
409 konflikt Server nemůže požadavek splnit kvůli konfliktu serveru.
410 pryč Požadovaný prostředek už není k dispozici.
411 contentLengthRequired Chybí záhlaví Content-Length.
412 předběžná podmínka selhala Předběžná podmínka pro tuto žádost se nezdařila.
413 payloadTooLarge Datová část je příliš velká.
414 uriTooLong Identifikátor URI je příliš dlouhý.
415 nepodporovaný typMediaType Zadaný typ média není podporován.
416 rangeNotSatisfiable Požadovaný rozsah dat nelze splnit.
417 expectationFailed Očekávané záhlaví nebylo možné splnit.
421 chybně nasměrovanýrequest Pro tento požadavek nelze vytvořit odpověď.
422 unprocessableEntity Požadavek obsahuje sémantické chyby.
423 zamčený Zdrojový nebo cílový prostředek je uzamčený.
429 tooManyRequests Příliš mnoho požadavků, zkuste to znovu později.
431 requestHeaderFieldsTooLarge Pole hlavičky požadavku je příliš velké.
500 internalServerError Na serveru došlo k obecné chybě.
501 notImplemented Server nepodporuje požadovanou funkci.
502 badGateway chybná odpověď přijatá z jiné brány
503 ServiceUnavailable Server je dočasně nedostupný, zkuste to prosím znovu později.
504 gatewayTimeout Vypršel časový limit přijatý z jiné brány.
507 insufficientStorage Nelze uložit data pro žádost.

Vnitřní typ chyby

Vnitřní objekt chyby obsahuje podrobnosti o konkrétní chybě užitečné pro vývojáře, aby pomohl prozkoumat aktuální selhání.

{
  "requestId": "782628eb-503a-4978-84f2-d7c634f25b15",
  "date": "Fri, 29 Apr 2022 11:20:19 GMT",
  "mscv": "QbBLwF7XAp0dt4Lw.1",
  "error": {
    "code": "badRequest",
    "message": "The request is invalid.",
    "innererror": {
      "code": "badOrMissingField",
      "message": "The request contains `includeQRCode`, but it is not boolean.",
      "target": "includeQRCode"
    }
  }
}
Vlastnost Typ Popis
code řetězec Kód vnitřní chyby. Obsahuje standardizovaný kód založený na typu chyby.
message řetězec Vnitřní chybová zpráva. Obsahuje podrobnou zprávu o chybě. V tomto příkladu je pole includeQRCode nesprávného typu.
target řetězec Volitelný. Cíl obsahuje pole v požadavku, které způsobuje tuto chybu. Toto pole je volitelné a nemusí existovat v závislosti na typu chyby.

Vnitřní kódy chyb

Kód Popis
badOrMissingField vráceno, když dojde k problémům s ověřováním v požadavku. Pole target obsahuje pole v požadavku, které způsobuje problém.
notFound vrácený, když klient požaduje prostředek, nebyl nalezen. Pole target obsahuje název nebo ID zdroje, které se nenašlo.
tokenError vráceny pro všechny problémy s ověřováním tokenů, jako je JSON Web Token (JWT) a to se mi líbí. Pole target obsahuje název tokenu, který způsobuje problém, pokud je to možné.
transientError vrácena pro všechny případy, kdy klient může být schopen získat úspěšnou odpověď, pokud požadavek zopakuje v pozdější fázi. Běžným příkladem vrácení tohoto kódu je vrácení kódu HTTP 429.

Další kroky