Foutcodes voor service-API aanvragen
Microsoft Entra geverifieerde ID bevat de REST API voor aanvraagservice waarmee u een referentie kunt uitgeven en verifiëren. In dit artikel worden de foutcodes voor de AANVRAAGservice-API opgegeven.
Foutobject
Tijdens de openbare preview retourneerde de API van de aanvraagservice fouten in de volgende indeling.
{
"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."
}
}
Deze indeling wordt nu gewijzigd in de volgende indeling, zodat zowel eenvoudigere foutafhandeling als betere ondersteuning voor probleemoplossing mogelijk is. In de nieuwe indeling bevatten de buitenste foutcode - en berichtvelden gestandaardiseerde waarden, terwijl het innererror
object details geeft over wat de fout heeft veroorzaakt.
{
"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"
}
}
}
Eigenschap | Type | Omschrijving |
---|---|---|
requestId |
tekenreeks | Een automatisch gegenereerde aanvraag-id. |
date |
datum | Het tijdstip van de fout. |
mscv |
tekenreeks | Interne Microsoft-code. |
error |
Fout | Het buitenste foutobject |
Fouttype
Het error
object komt nu overeen met de HTTP-statuscode die is geretourneerd door de API-aanroep om eenvoudiger foutafhandeling voor ontwikkelaars mogelijk te maken.
Eigenschap | Type | Omschrijving |
---|---|---|
code |
tekenreeks | De retourfoutcode die overeenkomt met de HTTP-statuscode. |
message |
tekenreeks | Een gestandaardiseerd foutbericht dat ook afhankelijk is van de HTTP-statuscode die wordt geretourneerd. |
innererror |
Innererror | Geef details op over wat de fout heeft veroorzaakt. |
Foutcodes en berichten
Hier volgen de mogelijke waarden op het hoogste niveau code
die worden toegewezen aan de verschillende HTTP-statuscodes die worden geretourneerd.
HTTP-statuscode | code | bericht |
---|---|---|
400 | badRequest | De aanvraag is ongeldig. |
401 | Onbevoegde | Voor de aangevraagde resource is verificatie vereist |
403 | Verboden | Ontbrekende machtigingen om aan deze aanvraag te voldoen. |
404 | notFound | De aangevraagde resource bestaat niet. |
405 | methodNotAllowed | De aangevraagde methode is niet toegestaan voor de aangevraagde resource. |
406 | notAcceptable | Aangevraagde antwoordindeling wordt niet ondersteund. |
408 | requestTimeout | Er is een time-out opgetreden voor de aanvraag. |
409 | Conflict | De server kan niet voldoen aan de aanvraag vanwege een serverconflict. |
410 | Gegaan | De aangevraagde resource is niet meer beschikbaar. |
411 | contentLengthRequired | De header Content-Length ontbreekt. |
412 | voorwaardeFailed | Een voorwaarde voor deze aanvraag is mislukt. |
413 | payloadTooLarge | De nettolading is te groot. |
414 | uriTooLong | De URI is te lang. |
415 | niet-ondersteundMediaType | Het opgegeven mediatype wordt niet ondersteund. |
416 | rangeNotSatisfiable | Het aangevraagde gegevensbereik kan niet worden voldaan. |
417 | expectationFailed | De verwachte header kan niet worden voldaan. |
421 | misdirectedRequest | Kan geen antwoord voor deze aanvraag produceren. |
422 | unprocessableEntity | De aanvraag bevat semantische fouten. |
423 | Vergrendeld | De bron- of doelresource is vergrendeld. |
429 | tooManyRequests | Te veel aanvragen, probeer het later opnieuw. |
431 | requestHeaderFieldsTooLarge | Het veld voor de aanvraagheader is te groot. |
500 | internalServerError | Er is een algemene fout opgetreden op de server. |
501 | niet geïmplementeerd | De server biedt geen ondersteuning voor de aangevraagde functie. |
502 | badGateway | ongeldig antwoord ontvangen van een andere gateway. |
503 | serviceUnavailable | De server is tijdelijk niet beschikbaar. Probeer het later opnieuw. |
504 | gatewayTimeout | Time-out ontvangen van een andere gateway. |
507 | insufficientStorage | Kan geen gegevens opslaan voor de aanvraag. |
Type binnenste fout
Het binnenste foutobject bevat foutspecifieke details die nuttig zijn voor de ontwikkelaar om de huidige fout te onderzoeken.
{
"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"
}
}
}
Eigenschap | Type | Omschrijving |
---|---|---|
code |
tekenreeks | De interne foutcode. Bevat een gestandaardiseerde code op basis van het type fout |
message |
tekenreeks | Het interne foutbericht. Bevat een gedetailleerd bericht van de fout. In dit voorbeeld is het includeQRCode veld van het verkeerde type. |
target |
tekenreeks | Optioneel. Het doel bevat het veld in de aanvraag die deze fout veroorzaakt. Dit veld is optioneel en is mogelijk niet aanwezig, afhankelijk van het fouttype. |
Interne foutcodes
Code | Beschrijving |
---|---|
badOrMissingField |
geretourneerd wanneer validatieproblemen op de aanvraag optreden. Het target veld bevat het veld in de aanvraag die het probleem veroorzaakt. |
notFound |
wordt geretourneerd wanneer een resource die de client aanvraagt, niet wordt gevonden. Het target veld bevat de resourcenaam/id die niet is gevonden. |
tokenError |
geretourneerd voor validatieproblemen op tokens zoals JWT en likes. Het target veld bevat de naam van het token dat het probleem veroorzaakt, indien van toepassing. |
transientError |
geretourneerd voor alle gevallen waarin de client mogelijk een geslaagd antwoord kan krijgen als ze de aanvraag in een later stadium opnieuw proberen. Een veelvoorkomend voorbeeld van wanneer deze code wordt geretourneerd, is wanneer een HTTP 429-code wordt geretourneerd |