Freigeben über


Diagnostizieren und Beheben fehlerhafter Anforderungsausnahmen in Azure Cosmos DB

GILT FÜR: NoSQL

Der HTTP-Statuscode 400 stellt dar, dass die Anforderung ungültige Daten enthält, oder es fehlen erforderliche Parameter.

Fehlende ID-Eigenschaft

Bei diesem Szenario tauchen häufig Fehler wie die folgenden auf:

Der Eingabeinhalt ist ungültig, weil die erforderlichen Eigenschaften (id) fehlen

Eine Antwort mit diesem Fehler bedeutet, dass das JSON-Dokument, das an den Dienst gesendet wird, nicht die erforderliche ID-Eigenschaft hat.

Lösung

Geben Sie eine id-Eigenschaft mit einem Zeichenfolgenwert an, der gemäß der REST-Spezifikation als Teil des Dokuments angezeigt wird, die SDKs generieren die Werte für diese Eigenschaft nicht automatisch.

Ungültiger Partitionsschlüsselstyp

Bei diesem Szenario tauchen häufig Fehler wie die folgenden auf:

Partitions Schlüssel... ist ungültig.

Eine Antwort mit diesem Fehler bedeutet, dass der Partitionsschlüsselwert einen ungültigen Typ hat.

Lösung

Der Wert des Partitionsschlüssels muss eine Zeichenfolge oder eine Zahl sein. Stellen Sie sicher, dass der Wert den erwarteten Typen entspricht.

Falscher Wert für den Partitionsschlüssel

Bei diesem Szenario tauchen häufig diese Fehler auf:

Der Antwortstatuscode gibt keinen Erfolgstatus an: BadRequest (400); Unterstatus: 1001

Der aus dem Dokument extrahierte Partitionsschlüssel stimmt nicht mit dem im Header angegebenen Wert überein

Eine Antwort mit diesem Fehler bedeutet, dass Sie einen Vorgang ausführen und einen Partitionsschlüsselwert übergeben, der nicht mit dem Textwert des Dokuments für die erwartete Eigenschaft identisch ist. Wenn der Partitionsschlüsselpfad /myPartitionKey ist, verfügt das Dokument über eine Eigenschaft namens myPartitionKey mit einem Wert, der nicht mit dem Wert identisch ist, der beim Aufrufen der SDK-Methode als Partitionsschlüsselwert angegeben wurde.

Lösung

Senden Sie den Wertparameter für den Partitionsschlüssel, der mit dem Dokument Eigenschaftswert übereinstimmt.

Genauigkeitsverlust beim numerischen Partitionsschlüsselwert

Bei diesem Szenario tauchen häufig Fehler wie die folgenden auf:

Der angeforderte Partitionsschlüssel liegt außerhalb des Schlüsselbereichs – möglicherweise aufgrund des Verlusts der Genauigkeit des Partitionsschlüsselwerts.

Eine Antwort mit diesem Fehler wird wahrscheinlich durch einen Vorgang in einem Dokument mit einem numerischen Partitionsschlüssel verursacht, dessen Wert außerhalb des von Azure Cosmos DB unterstützten Werts liegt. Unter Grenzwerte pro Element finden Sie die maximale Länge des numerischen Eigenschaftswerts.

Lösung

Erwägen Sie die Verwendung des Typs string für den Partitionsschlüssel, wenn präzise numerische Werte erforderlich sind.

Nächste Schritte