Förbättrade felkoder enhanced-error-codes
Förbättrade felkoder är en Adobe Pass-autentiseringsfunktion som ger ytterligare felinformation till klientprogram som är integrerade med:
-
Adobe Pass Authentication REST API
-
Adobe Pass Authentication SDKs Förauktorisera API:
- (Äldre) JavaScript SDK (förauktorisera API)
- (Äldre) iOS/tvOS SDK (förauktorisera API)
- (Äldre) Android SDK (förauktorisera API)
(*) API för förauktorisering är det enda Adobe Pass Authentication SDK-API som har stöd för Enhanced Error Codes.
Representation enhanced-error-codes-representation
Förbättrade felkoder kan representeras i JSON- eller XML-format beroende på det inbyggda Adobe Pass Authentication-API:t och det använda Accept-rubrikvärdet (dvs. application/json eller application/xml):
- Felinformation på den översta nivån: I det här fallet finns "error" -objektet på den översta nivån, och därför kan svarsbrödtexten bara innehålla "error" -objektet.
- Felinformation på objektnivå: I det här fallet finns "error" -objektet på objektnivå, och därför kan svarstexten innehålla ett "error" -objekt för alla objekt som har råkat ut för ett fel under bearbetningen.
REST API v2
Se följande HTTP-svar som innehåller exempel på förbättrade felkoder som JSON kan användas för REST API v2.
| code language-json |
|---|
|
| code language-json |
|---|
|
REST API v1
Se följande HTTP-svar som innehåller exempel på förbättrade felkoder som representeras av JSON eller XML som gäller för REST API v1.
| code language-json |
|---|
|
| code language-json |
|---|
|
| code language-xml |
|---|
|
Struktur enhanced-error-codes-representation-structure
Förbättrade felkoder innehåller följande JSON-fält eller XML-attribut med exempel:
Mer information finns i avsnittet Åtgärd.
Mer information finns i avsnittet Kod.
Mer information finns i avsnittet Svarshantering.
Det här fältet kanske inte finns om tjänstpartnern inte tillhandahåller något anpassat meddelande.
Det här fältet innehåller en absolut URL-adress och bör inte härledas från felkoden, beroende på felkontexten kan en annan URL anges.
Åtgärd enhanced-error-codes-representation-action
Förbättrade felkoder innehåller ett åtgärdsfält som innehåller en rekommenderad åtgärd som kan åtgärda problemet.
Möjliga värden för åtgärdsfältet är:
(*) För vissa fel kan flera åtgärder vara möjliga lösningar, men åtgärdsfältet anger den som har den största sannolikheten att åtgärda felet.
Status enhanced-error-codes-representation-status
Förbättrade felkoder innehåller ett statusfält som anger HTTP-statuskoden som är associerad med felet.
Möjliga värden för statusfältet är:
Förbättrade felkoder med 4xx "status" visas vanligtvis när felet genereras av klienten och större delen av tiden det innebär att klienten behöver ytterligare arbete för att kunna åtgärda det.
Förbättrade felkoder med 5xx "status" visas vanligtvis när felet genereras av servern och oftast kräver servern mer arbete för att åtgärda felet.
Code enhanced-error-codes-representation-code
Förbättrade felkoder innehåller ett kodfält med en unik identifierare för Adobe Pass-autentiseringen som är associerad med felet.
Möjliga värden för kodfältet slås samman nedan i två listor som baseras på det inbyggda Adobe Pass Authentication API:t.
Listor enhanced-error-codes-lists
REST API v2 enhanced-error-codes-lists-rest-api-v2
Tabellen nedan visar möjliga felkoder som ett klientprogram kan stöta på när det är integrerat med Adobe Pass Authentication REST API v2.
(Äldre) REST API v1 enhanced-error-codes-lists-rest-api-v1
Tabellen nedan visar möjliga felkoder som ett klientprogram kan stöta på när det är integrerat med Adobe Pass Authentication REST API v1.
(Äldre) SDKs Förauktorisera API enhanced-error-codes-lists-sdks-preauthorize-api
I föregående avsnitt finns information om möjliga felkoder som ett klientprogram kan stöta på när det är integrerat med Adobe Pass Authentication SDKs PreAuthze API.
Svarshantering enhanced-error-codes-response-handling
Sammanfattningsvis bör du tänka på följande när du hanterar svar som innehåller förbättrade felkoder:
-
Till API som returnerar felet: Implementera en centraliserad felhanteringslogik som stöder hela katalogen med förbättrade felkoder, oavsett vilket API som genererar dem. Flera Enhanced Error Code delas mellan API:er och måste hanteras på ett konsekvent sätt.
-
Felinformation på högsta nivån kontra objektnivå: Hantera felinformation på högsta nivån och på objektnivå oavsett hur den kommuniceras, se till att du kan hantera båda typerna av överföring av utökade felkoder.
-
Kontrollera båda statusvärdena: Kontrollera alltid både HTTP-svarets statuskod och det utökade felkodens statusfält. De kan skilja sig åt och båda ge värdefull information.
-
Återförsökslogik: För fel som kräver ett nytt försök måste du se till att återförsöken är begränsade (dvs. 2-3) eller att de utförs med exponentiella säkerhetskopior för att undvika att servern överbelastas. Om det gäller API:er för Adobe Pass-autentisering som hanterar flera objekt samtidigt (t.ex. API för förauktorisering), bör du i den upprepade begäran endast inkludera de objekt som är markerade med"återtry" och inte hela listan.
-
Konfigurationsändringar: För fel som kräver konfigurationsändringar måste du se till att nödvändiga ändringar görs innan du startar det nya programmet eller den nya funktionen.
-
Autentisering och auktorisering: För fel som rör autentisering och auktorisering måste du uppmana användaren att autentisera igen eller skaffa ny auktorisering efter behov.
-
Användarfeedback: Om du vill kan du använda de läsbara fälten "message" och (potentiella) "details" för att informera användaren om problemet. Textmeddelandet "details" kan skickas från MVPD-slutpunkter för förauktorisering eller auktorisering eller från Programmeraren när reglerna för nedbrytning tillämpas.