Table of contents

Kódy chyb a zpracování chyb | Rozhraní Graph API konceptyError codes and error handling | Graph API concepts

Jimaco Brannian|Poslední aktualizace: 19. 6. 2018
|
1 Přispěvatel

Platí pro: Graph API | Azure Active Directory (AD)Applies to: Graph API | Azure Active Directory (AD)

Klientské aplikace, které používají rozhraní Graph API Azure Active Directory (AD) by měla implementovat logiku pro reagovat jako řádně nejblíže různých podmínky a dosažení optimálního výkonu možné zákazníkům zpracování chyb. Client applications that use the Azure Active Directory (AD) Graph API should implement error handling logic to react as gracefully as possible to varying conditions and provide the best experience possible to their customers.Téma popisuje typy chyb, Azure AD Graph API vrátí, obsahuje obecné pokyny o tom, jak je zpracovat.The topic discusses the types of errors that the Azure AD Graph API returns and provides general guidance on how to handle them.

Důležité

Důrazně doporučujeme použít Microsoft Graph místo Azure AD Graph API pro přístup k prostředkům Azure Active Directory.We strongly recommend that you use Microsoft Graph instead of Azure AD Graph API to access Azure Active Directory resources.Náš vývojový program jsou nyní soustředit na Microsoft Graph a dále jsou plánované pro Azure AD Graph API.Our development efforts are now concentrated on Microsoft Graph and no further enhancements are planned for Azure AD Graph API.Je velmi omezený počet scénářů, pro které Azure AD Graph API může být vhodné; Další informace najdete v tématu Microsoft Graph nebo Azure AD Graph příspěvku na blogu v Office Dev Center.There are a very limited number of scenarios for which Azure AD Graph API might still be appropriate; for more information, see the Microsoft Graph or the Azure AD Graph blog post in the Office Dev Center.

Zpracování chyb rozhraní Graph API Handling Graph API errors

Typy chybTypes of errors

V následujících kategoriích dojít k chybám Graph API.Graph API errors occur in the following categories.

  • Chyby klienta.Client Errors.Chyby klienta jsou reprezentované pomocí stavové kódy HTTP 400-series.Client errors are represented by 400-series HTTP status codes.Obsahují objekty, s neplatnými hodnotami, objekty, které chybí požadované vlastnosti nebo hodnoty vlastností, pokusu o přístup k neexistující prostředku, pokus o aktualizaci vlastnost určenou jen pro čtení a vynechání požadované autorizační token.They include objects with invalid values, objects that are missing required properties or property values, attempting to access a non-existent resource, attempting to update a read-only property, and omitting the required authorization token.Vyřešit tyto chyby, opravte problém základní před opakováním žádosti.To resolve these errors, fix the underlying issue before retrying the request.
  • Chyby serveru.Server Errors.Chyby serveru jsou reprezentované pomocí řady 500 stavové kódy HTTP, jako je například selhání přechodného adresáře.Server errors are represented by 500-series HTTP status codes, such as a transient directory failure.Většina tyto chyby jsou přechodné a lze vyřešit opakováním žádosti.Most of these errors are transient and can be resolved by retrying the request.
  • Sítě a protokolu chyb.Network/Protocol Errors.Různé chyby související se sítí může dojít při odesílání požadavku nebo získat odpověď, například chyb překladu názvu hostitele, předčasně uzavřené připojení a chyb vyjednávání protokolu SSL.A variety of network-related errors can occur while sending a request or receiving a response, such as host name resolution errors, prematurely closed connections, and SSL negotiation errors.Většina z těchto chyb nelze vyřešit opakováním; Základní problém je vyřešený.Most of these errors cannot be resolved by retrying; the underlying issue has to be fixed.Některé chyby, například chybami rozlišení názvu hostitele nebo vypršení časových limitů, však může vyřešit opakováním žádosti.However, some errors, such as host-name resolution failures or timeouts, might be resolved by retrying the request.

Struktura chybová zprávaError message structure

Rozhraní API chyby grafu mají formátovaný text, který se skládá ze stavového kódu protokolu HTTP, zprávu a hodnoty.Graph API errors have a formatted body that consists of an HTTP status code, a message, and values.Použijte vlastnosti těla Chyba v vaše zpracování logiky chyb.Use the properties of the error body in your error handling logic.

Poznámka:: některá HTTP odpovědí nemusí zahrnovat text odpovědi kódu, zprávy nebo hodnoty, vzhledem k tomu, že požadavek je směrován prostřednictvím služby proxy a brány.Note: Some HTTP responses might not include the code/message/values response body because the request is routed through proxy and gateway services.Nezapomeňte zahrnout výchozí logiku, která dokáže zpracovat chyby podle stavový kód HTTP samostatně.Be sure to include default logic that can handle errors based on the HTTP status code alone.

Následuje příklad chybu HTTP 400 Request_BadRequest.The following is an example of an HTTP 400 Request_BadRequest error.

 HTTP/1.1 400 Bad Request
 Content-Type: application/json;odata=minimalmetadata;charset=utf-8
 request-id: ddca4a7e-02b1-4899-ace1-19860901f2fc
 Date: Tue, 02 Jul 2013 01:48:19 GMT
 …
 
 {
     "odata.error" : {
         "code" : "Request_BadRequest",
         "message" : {
             "lang" : "en",
             "value" : "A value is required for property 'mailNickname' of resource 'Group'."
         },
     "values" : null
    }
 }

Každý tělo zprávy obsahuje kód, zprávu a hodnoty vlastnosti.Each message body has code, message, and values properties.

  • Kód: návrh logika zpracování chyb do větve založené na kódu.Code: Design your error-handling logic to branch based on the code.

    "code" : "Request_BadRequest"
    
  • Zpráva: řazené kolekce členů jazyka/hodnota představující čitelná pro člověka chybová zpráva.Message: A language/value tuple that represents a human-readable error message.Obsah je v poli hodnota.The content is in the value field.V následujícím příkladu se požadavek nezdaří, protože hodnota mailNickname chybí vlastnost.In the following example, the request fails because the value of the mailNickname property is missing.

    "message" : {
         "lang" : "en",
         "value" : "A value is required for property 'mailNickname' of resource 'Group'."
    }
    
  • Hodnoty: kolekce dvojic název hodnota, které poskytují další informace o povaze chyby.Values: A collection of name/value pairs that provide more information about the nature of the failure.V následujícím příkladu jsou zahrnuty žádné hodnoty.In the following example no values are included.

    "values" : null
    

Referenční informace k chybovým kódem Error code reference

Kódy chyb HTTP HTTP error codes

Následující tabulka uvádí rozhraní Graph API kódy chyb, chybové zprávy a akce vzít v úvahu při opravě chyby.The following table lists Graph API error codes, error messages, and actions to consider when correcting errors.

Obecně platí, chyby protokolu HTTP 500-series reagovat na opakovaných pokusů, pokud možno distribuován přes stále dlouhé časové intervaly ("opakování s intervalem back vypnout") a s náhodných distribuční faktorem.In general, HTTP 500-series errors respond to retries, preferably distributed over increasingly long time intervals ("retry with a back-off interval") and with a random distribution factor.chyby 400-series naznačují problém, který je potřeba opravit před opakováním pokusu.400-series errors indicate a problem that must be fixed before retrying.

Kód stavu HTTPHTTP Status CodeKód chybyError codeChybová zprávaError messagePodrobnostiDetails
400400Directory_ExpiredPageTokenDirectory_ExpiredPageTokenHodnota tokenu Zadaná stránka vypršela platnost a již lze zahrnout do vaší žádosti.The specified page token value has expired and can no longer be included in your request.
400400Directory_ResultSizeLimitExceededDirectory_ResultSizeLimitExceededByl překročen Limit velikosti výsledekResult Size Limit was ExceededŽádost nejde dokončit, protože je přidružen příliš mnoho výsledků.The request cannot be fulfilled because it is associated with too many results.Tato chyba nastane velmi zřídka.This error occurs very infrequently.
400400DomainVerificationCodeNotFoundDomainVerificationCodeNotFoundOvěření domény nezdaří, protože proces ověření nelze najít záznam TXT s odpovídající ověřovací kód.Domain verification fails because the verification process cannot find the TXT record with matching verification code.
400400ObjectConflictObjectConflictNázev domény už v neověřené domény v této společnosti.The domain name already exists in an unverified domain in this company.
400400ObjectConflictObjectConflictNázev domény už v ověřené domény v této společnosti.The domain name already exists in a verified domain in this company.
400400ObjectInUseObjectInUseNelze odstranit doménu aktuálně odkazuje uživatele, skupiny nebo víceklientské aplikaceCannot delete the domain currently referenced by a user, group or multi-tenant application
400400ObjectPendingDeletionObjectPendingDeletionNelze ověřit již existující domény, která čeká na odstranění.Cannot verify a an existing domain which is pending deletion.
400400ObjectPendingTakeoverObjectPendingTakeoverNelze odstranit doménu právě převzetí klientaCannot delete a domain in the process of a tenant takeover
400400Request_BadRequestRequest_BadRequestChybný požadavek.Bad request.Před opakováním opravte žádosti.Please fix the request before retrying.Označuje chybu v požadavku, například neplatnou hodnotu vlastnosti nebo argument nepodporované dotazu.Indicates an error in the request, such as an invalid property value or an unsupported query argument.Před opakováním opravte žádosti.Fix the request before retrying.
400400Request_DataContractVersionMissingRequest_DataContractVersionMissingParametr verze kontraktů dat chybí.Data contract version parameter is missing.Verze rozhraní api zahrnout jako parametr dotazu s všechny požadavky.Include api-version as a query parameter with all your requests.
400400Request_InvalidDataContractVersionRequest_InvalidDataContractVersionZadaná verze rozhraní api je neplatný.The specified api-version is invalid.Hodnota musí přesně shodovat na podporovanou verzi.The value must exactly match a supported version.
400400Request_InvalidRequestUrlRequest_InvalidRequestUrlAdresa url požadavku byl neplatný.Request url was invalid.Požadavek by měl být jako /tenantdomainname/Entity nebo /$metadata.The request should be like /tenantdomainname/Entity or /$metadata.Název domény klienta může být ověřené, neověřené domény názvy nebo id kontextu.Tenant domain name can be any of the verified, unverified domain names or context id.
400400Request_UnsupportedQueryRequest_UnsupportedQueryPožadavek GET není podporováno.The GET request is unsupported.Opravte parametry žádosti a zkuste to znovu.Fix the request parameters and try again.
401401Authentication_ExpiredTokenAuthentication_ExpiredTokenVypršela platnost přístupového tokenu.Your access token has expired.Obnovte ji před odesláním požadavku.Please renew it before submitting the request.Vypršela platnost tokenu přístupu.Access token has expired.Obnovte token a potom odešlete znovu.Renew the token and then resubmit.
401401Authentication_MissingOrMalformedAuthentication_MissingOrMalformedChybějící nebo nesprávně přístupový Token.Access Token missing or malformed.Access_token hodnota v hlavičce autorizace je chybějící nebo nesprávně.The access_token value in the authorization header is missing or malformed.Tato hodnota je vyžadována.This value is required.Použijte hodnotu v ověřovací token.Use the value in the authentication token.
401401Authorization_IdentityDisabledAuthorization_IdentityDisabledObjekt volání aplikace je zakázaná.The calling application principal is disabled.Objekt zadaný v tokenu přístupu je v adresáři, ale je zakázán.The principal specified in the access token is in the directory, but is it disabled.Znovu povolit účet v adresáři a zkuste to znovu.Re-enable the account in the directory, and try again.
401401Authorization_IdentityNotFoundAuthorization_IdentityNotFoundNelze vytvořit identitu volajícího aplikace.The identity of the calling application could not be established.Objekt zadaný v tokenu přístupu nebyl nalezen v adresáři.The principal specified in the access token was not found in the directory.Tomu může dojít, protože token je zastaralá, objekt byl odstraněn z adresáře nebo synchronizace adresářů je zpožděno.This might occur because the token is stale, the principal was deleted from the directory, or directory synchronization is delayed.
403403Authentication_UnauthorizedAuthentication_UnauthorizedNeoprávněného požadavku.Unauthorized request.Token obsahuje neplatné nebo nepodporované deklarace identity.The token contains invalid or unsupported claims.Získání tokenu žádost znovu a poté opakujte žádost.Get the request token again and then retry the request.
403403Authorization_RequestDeniedAuthorization_RequestDeniedZadaná pověření nemají dostatečná oprávnění k vytvoření této žádosti.The specified credentials do not have sufficient privileges to make this request.Požadavek byl odepřen v důsledku nedostatečných oprávnění.The request is denied due to insufficient privileges.Například objekt bez oprávnění správce nemá oprávnění k odstranění prostředku.For example, a non-administrative principal does not have permission to delete a resource.
403403Directory_QuotaExceededDirectory_QuotaExceededAdresář objekt limit kvóty {tenantName} byla překročena.The directory object quota limit for the {tenantName} has been exceeded.Požádejte správce zvyšte maximální kvótu nebo odstranit objekty, které chcete snížit použité kvótu.Please ask your administrator to increase the quota limit or delete objects to reduce the used quota.Byla překročena kvóta adresáře.A directory quota has been exceeded.Klient může být příliš mnoho objektů nebo objekty může mít příliš mnoho hodnot.The tenant might have too many objects or the objects might have too many values.Také k tomu dochází, když pro objekt zabezpečení v vytvořeno příliš mnoho objektů.This also occurs when too many objects are created on for the principal.Zvýšení počtu maximální povolené objekt pro klienta nebo objekt, nebo snižte počet hodnot, které jsou součástí žádost o vytvoření nebo aktualizaci.Increase the maximum allowed object count for the tenant or principal, or reduce the number of values included in the create/update request.
404404Directory_ObjectNotFoundDirectory_ObjectNotFoundNelze číst informace o společnosti z adresáře.Unable to read the company information from the directory.
404404Request_ResourceNotFoundRequest_ResourceNotFoundProstředek {resource} neexistuje nebo jeden z jeho dotazované vlastnost referenčního objekty nejsou k dispozici.Resource {resource} does not exist or one of its queried reference-property objects are not present.V prostředku označeném identifikátorem URI neexistuje.The resource identified by the URI does not exist.Zkontrolovat, jestli hodnota a opakujte žádost.Revise the value and retry the request.
409409Request_MultipleObjectsWithSameKeyValueRequest_MultipleObjectsWithSameKeyValueJediný zdroj byl očekáván výsledek však nalezeno několik prostředků.A single resource was expected for the result, but multiple resources were found.Aktualizujte prosím objekty vyřešení konfliktu.Please update the object(s) to resolve the conflict.Této chybě může dojít, pokud jsou dva nebo více objektů, které mají stejnou hodnotu klíče, například pokud mají dva uživatelé stejné UserPrincipalName.This error can occur when there are two or more objects that have the same key value, e.g. when two users have the same UserPrincipalName.
429429Příliš mnoho požadavků.Too Many Requests.K této chybě dojde, když probíhá požadavky omezeny.This error occurs when requests are being throttled.Navrhované čekací doba je vrácený v opakovat po hodnotu hlavičky odpovědi.A suggested wait time is returned in the Retry-After value of the response header.Opakujte požadavek za doporučený počet sekund čekání.Retry the request after waiting the recommended number of seconds.
500500Service_InternalServerErrorService_InternalServerErrorDošlo vnitřní chybě serveru.Encountered an internal server error.Při zpracování požadavku došlo k chybě interního serveru.Internal server error while processing the request.
502502[All][All]“... Služba není k dispozici..."“... Service Unavailable...”Funguje jako brána nebo proxy serveru došlo k chybě z jiného serveru při zpracování požadavku.A server acting as a gateway or proxy encountered an error from another server while processing the request.Počkejte několik minut a opakujte žádost.Wait a few minutes and then retry the request.
503503Directory_ConcurrencyViolationDirectory_ConcurrencyViolationDošlo k chybě z důvodu souběžných požadavkům na klienta.Error due to concurrent requests being made to the tenant.Stručně počkejte a zkuste zopakovat.Please wait briefly and retry.
503503Došlo k chybě během ověřování DNS (Poznámka: může být způsobeno z různých důvodů, jako je služba DNS je aktuálně dolů).Error encountered during DNS verification (note: Can be caused by various reasons such as DNS is currently down).
Authentication_UnknownAuthentication_UnknownVnitřní chybu serveru.Internal server error.Tento kód chyby se používá, když se nevztahují ostatní kódy chyb.This error code is used when other error codes do not apply.
Authentication_UnsupportedTokenTypeAuthentication_UnsupportedTokenTypeTyp tokenu uvedené není zpracován.The type of token presented is not handled.Jsou podporovány pouze nosné tokeny.Only bearer tokens are supported.Typ tokenu není podporována.The token type is not supported.Zkontrolovat, jestli typ tokenu před dalším pokusem žádosti.Revise the token type before trying the request again.
Directory_BindingRedirectionDirectory_BindingRedirectionInformace o klienta není k dispozici místně.Tenant information is not available locally.Získání informací o používejte následující adresy URL.Use the following Urls to get the information.Když klient oddílu není k dispozici v datovém centru, klienti se musí připojit k adrese URl vrácený v odpovědi.When the tenant partition is not available in the datacenter, clients must connect to the URl returned in the response.
Directory_BindingRedirectionInternalServerErrorDirectory_BindingRedirectionInternalServerErrorInformace o klienta není k dispozici místně.Tenant information is not available locally.Na server došlo k vnitřní chybě při pokusu o naplnění nejbližší koncové body datového centra.The server encountered an internal error while trying to populate the nearest datacenter endpoints.Když dojde k výjimce přesměrování vazby, se naplní seznam nejbližší datacenter koncových bodů pro službu.When a binding redirection exception occurs, the list of nearest datacenter endpoints for the service is populated.Tato chyba označuje výjimku při vyplňování seznamu.This error indicates an exception when populating the list.Zadejte dotaz znovu.Try the query again.
Directory_CompanyNotFoundDirectory_CompanyNotFoundNelze číst informace o společnosti z adresáře.Unable to read the company information from the directory.Došlo k chybě při načítání informací o společnosti z adresářové služby.An error occurred while loading company information from the directory service.
Directory_ReplicaUnavailableDirectory_ReplicaUnavailableUpřednostňované repliky není k dispozici.The preferred replica is unavailable.Zkuste to prosím znovu bez všechny repliky hlavičky klíče relace.Please retry without any replica session key header.Vynechat hlavičky x-ms repliky relace key a poté opakujte.Omit the x-ms-replica-session-key header and then retry.
Headers_DataContractVersionMissingHeaders_DataContractVersionMissingZáhlaví verze kontraktů dat chybí.The data contract version header is missing.Zahrnout x-ms-dirapi-data-contract-version ve vaší žádosti.Include x-ms-dirapi-data-contract-version in your request.V požadavku chybí kontrakt verze klienta.The client contract version is missing from the request.
Headers_HeaderNotSupportedHeaders_HeaderNotSupportedZáhlaví {0} není aktuálně podporován.Header {0} is not currently supported.Žádost obsahuje nepodporovaný záhlaví HTTP.The request contains an unsupported HTTP header.Změnit záhlaví a akci opakujte.Change the header and try the request again.
Request_InvalidReplicaSessionKeyRequest_InvalidReplicaSessionKeyZadaný klíč relace repliky není platný.The replica session key provided is not valid.Opravte klíč relace repliky a zkuste požadavek znovu.Fix the replica session key and try the request again.
Request_ThrottledPermanentlyRequest_ThrottledPermanentlyVaše žádost je omezen trvale.Your request is throttled permanently.Zavolejte technickou podporu na adresu problém.Please call support to address the issue.Klient opakovaně a trvalé překročil limit míra žádosti o token.The tenant repeatedly and persistently exceeded the token request rate limit.Požadavky z klienta, byly zamítnuty, dokud je vyjednána službu znovu.Requests from the tenant are rejected until the service is renegotiated.Pokud potřebujete pomoc Kontaktujte Microsoft Support.For help, contact Microsoft Support.

Další zdroje informací Additional resources

© 2018 Microsoft