Fehlercodes für globale API-Methoden
In diesem Tutorial werden die globalen Fehlercodes aufgeführt, die für jede PlayFab-API-Methode gelten. Die folgenden Informationen können verwendet werden, um API-Fehler zu entschlüsseln.
Jeder API-Fehler enthält die folgenden Felder:
- Code : Der vom Server zurückgegebene HTTP-Fehlercode
- ErrorCode : Ein für PlayFab spezifischer numerischer Fehlercode.
- Fehler : Ein für PlayFab lesbarer Code.
- ErrorMessage : Eine Beschreibung des Fehlers, die zusätzlichen Kontext bereitstellt, der für das Debuggen nützlich ist.
- ErrorDetails: Nicht immer vorhanden. Stellt zusätzlichen Kontext für bestimmte Fehlertypen bereit.
Notiz
Auf dieser Seite werden die häufig auftretenden Fehlercodes aufgelistet. Wenn der gesuchte Fehlercode auf dieser Seite nicht verfügbar ist, lesen Sie unsere allgemeine HTTP-Antwort status Codeleitfaden.
Sichere Wiederholungscodes
Es ist in der Regel sicher, Anforderungen zu wiederholen, die mit diesen Fehlercodes fehlschlagen, mit einer exponentiellen Verzögerung backoff. Diese Fehler bedeuten in der Regel, dass Ihr Client zu schnell Aufrufe durchführt, aber die Anforderung selbst ist möglicherweise gültig.
APIClientRequestRateLimitExceeded (1199)
: Gibt zu viele Aufrufe in einem kurzen Burst an.APIConcurrentRequestLimitExceeded (1342)
: Gibt zu viele gleichzeitige Aufrufe an.ConcurrentEditError (1133)
: Gibt zu viele gleichzeitige Aufrufe oder sehr schnelle sequenzielle Aufrufe an.DataUpdateRateExceeded (1287)
: Gibt zu viele gleichzeitige Aufrufe oder sehr schnelle sequenzielle Aufrufe an.DownstreamServiceUnavailable (1127)
: Gibt an, dass bei PlayFab oder einem Drittanbieterdienst möglicherweise ein vorübergehendes Problem vorliegt.ServiceUnavailable (1123)
: Gibt an, dass bei PlayFab möglicherweise ein vorübergehendes Problem vorliegt oder der Client zu viele API-Aufrufe zu schnell durchführt. Wenn Sie diese Anforderung wiederholen, ist wichtig, um eine exponentielle Backoffstrategie ordnungsgemäß zu verwenden.
Codes nie wiederholen
Wenn Sie diese Fehlercodes erhalten, sollten Sie es nie wiederholen, da die Anforderung unter den aktuellen Umständen nie ohne Eine Fehlerbehebung oder Einstellungsänderung abgeschlossen werden kann.
Die meisten spezifischen Codes, die mit einer API-Methode aufgeführt sind, fallen ebenfalls in diese Kategorie.
AccountBanned (1002)
:
Das Spielerkonto wurde gesperrt, und alle API-Methoden schlagen mit diesem Fehler fehl.AccountDeleted (1322)
: Das Spielerkonto wurde gelöscht, und alle API-Methoden schlagen mit diesem Fehler fehl.AccountNotFound (1001)
: Das Spielerkonto ist nicht vorhanden, wahrscheinlich, weil Sie einenPlayFabId/TitlePlayerId
nicht ordnungsgemäß kopieren. Dieser Fehler tritt immer auf, wenn der Bezeichner nicht korrekt ist.APIRequestsDisabledForTitle (1295)
: Alle API-Anforderungen wurden für diesen Titel deaktiviert und können nicht mehr verwendet werden.InvalidContentType (1144)
: Es sollte unmöglich sein, dies zu erhalten, wenn Sie eines unserer SDKs verwenden. Wenn Sie ihre eigenen unformatierten HTTPS-Aufrufe an PlayFab-API-Methoden ausführen, muss derContent-Type
Header lautenapplication/json
. Es werden keine anderen Formate akzeptiert.InvalidEntityType (1373)
: Der Entitätstyp im Token, das für die Authentifizierung verwendet wird, wird von dieser API nicht unterstützt.InvalidParams (1000)
: Das an PlayFab gesendete API-Anforderungsobjekt weist ungültige Parameter auf und kann nicht ausgeführt werden.InvalidRequest (1071)
: Das an PlayFab gesendete API-Anforderungsobjekt ist ungültig und kann nicht ausgeführt werden.InvalidTitleId (1004)
: Die Anforderung hat eine TitleId bereitgestellt, die nicht mit dem in der URL der Methode angegebenen Titel übereinstimmt. In den meisten SDKs sollten Sie keine TitleId für Anmeldeanforderungen angeben, wie dies für Sie erfolgt. In der Administrator-API sind explizite TitleIds ein Sicherheitsfeature von Dev-Test-Live>.>NotAuthenticated (1074)
: Der Client hat versucht, eine API aufzurufen, die eine Authentifizierung erfordertSessionTicket
, ohne sich zuerst anzumelden.NotAuthorized (1089)
: Falsche Anmeldeinformationen oder anderweitig fehlerhafte Eingaben im Zusammenhang mit der Anmeldung.NotAuthorizedByTitle (1191)
: Diese Methode wurde von der API-Richtlinie deaktiviert und kann nicht aufgerufen werden.ProfileDoesNotExist (1298)
: Es wurde versucht, auf eine Entität (Spieler, Charakter, Titel usw.) zuzugreifen, die nicht vorhanden ist. Wahrscheinlich ein Tippfehler, oder Sie haben irgendwo eine schlechte Eingabe.TitleDeleted (1347)
: Dieser Titel wurde aus PlayFab gelöscht und kann nicht mehr verwendet werden.UnknownError (1039)
: Dies tritt in der Regel auf, wenn fehlerhafte Informationen an ein Drittanbieter-Add-On gesendet werden und bei der Interaktion mit externen Systemen auf unserem Server ein unbekanntes Ergebnis oder ein unbekannter Fehler aufgetreten ist. Um dies zu beheben, experimentieren Sie mit Ihren Eingaben, und versuchen Sie, festzustellen, ob Ihre Eingaben in irgendeiner Weise ungültig sind. Andernfalls melden Sie den Fehler in den Foren mit Ihrer titleId, dem vollständigen ANFORDERUNGS-JSON (falls möglich) und der Fehlerausgabe. Postman ist ein nützliches Tool zum Debuggen dieser Situation.InvalidAPIEndpoint (1131)
: Gibt an, dass die URL für diese Anforderung für diesen Titel ungültig ist.OverLimit (1214)
: Gibt an, dass der Versuch, einen Vorgang auszuführen, dazu führt, dass die Dienstnutzung den Grenzwert überschreitet, wie auf den Game Manager-Limitseiten gezeigt. Werten Sie die zurückgegebenen Fehlerdetails aus, um zu bestimmen, welcher Grenzwert überschritten wird.
Andere wichtige Fehlercodes
Diese Codes treten nur für bestimmte API-Methoden auf (die auf der Dokumentationsseite für diese Methoden aufgeführt sind), aber wenn Sie sie sehen, gibt es wichtige Konsequenzen, die Sie beachten sollten.
APIConcurrentRequestLimitExceeded (1342)
: Ihr Titel trifft CloudScript entweder zu hart oder versucht, die Segmentauswertung zu häufig zu erzwingen (oder beides). Für erstere sind die beiden Dinge zu untersuchen:- Wie oft Ihre Skriptaufrufe die nahezu maximale Zeit pro Anruf nutzen (oder noch schlimmer, Timeout).
- Wie häufig Sie CloudScript pro Player aufrufen. Aufrufe zum Abrufen der Liste der Spieler in einem Segment sind das Wichtigste, was untersucht werden sollte (eine Aufgabe, die auf ein Segment abzielt, führt auch zu einer erneuten Auswertung, aber dies sollte nur selten vorkommen).
ConnectionTimeout (2)
: Abhängig von den Besonderheiten des verwendeten SDK und des zugrunde liegenden Netzwerkstapels können Fehler wie ConnectionError, ConnectionTimeout oder andere Fehler im Zusammenhang mit Schwierigkeiten beim Kontaktieren der PlayFab-Server angezeigt werden. Dies alles deutet auf Netzwerkprobleme hin. Die häufigste Quelle ist eine Trennung auf der Clientseite. Es ist auch möglich, diese abzurufen, wenn das Internetrouting zwischen dem Client und den Servern von PlayFab aus irgendeinem Grund unterbrochen wird. Es gibt sehr wenig, was ein Spiel tun kann, um diese Fehler zu behandeln. Die beste Antwort besteht darin, Upstream Anrufern oder dem Spieler mitzuteilen, dass keine Verbindung hergestellt werden kann. Sie könnten den Vorgang später erneut initiieren.