Ich habe versucht, ein Dokument aus DocumentDB mithilfe der REST-API zu erhalten. Ich verwende eine partitionierte Collection und muss daher den Header "x-ms-documentdb-partitionkey" hinzufügen. Wenn ich das addiere, bekomme ich "Partitionsschlüssel abc ist ungültig". Ich kann nirgendwo in der Dokumentation finden, dass der Schlüssel in einem bestimmten Format erwartet wird, aber die Bereitstellung des erwarteten Zeichenfolgenwerts funktioniert nicht. Kennt jemand das erwartete Format?DocumentDB-REST-API: x-ms-documentdb-partitionkey ist ungültig
2
A
Antwort
4
Der Partitionsschlüssel muss als Array (mit einem einzelnen Element) angegeben werden. Zum Beispiel:
x-ms-documentdb-partitionkey: [ "abc" ]
2
Der Partitionsschlüssel für eine partitionierte Auflistung ist eigentlich der Pfad zu einer Eigenschaft in DocumentDB. So müssen Sie es in folgendem Format angeben:
/{path to property name} e.g. /department
Von Partitioning and scaling in Azure DocumentDB
:
Sie müssen einen JSON Eigenschaftsnamen auswählen, die eine breite Palette von Werten hat und wahrscheinlich gleichmäßig verteilt haben Zugriffsmuster. Der Schlüssel der Partition wird als JSON-Pfad angegeben, z./Abteilung vertritt die Immobilienabteilung.
Weitere Beispiele finden Sie ebenfalls im Link.
Verwandte Themen
- 1. Devise confirmation_token ist ungültig
- 2. XGBClassifier num_class ist ungültig
- 3. Elementtyp ist ungültig
- 4. Parameter ScheduleExpression ist ungültig
- 5. Funktionsobjekt ist ungültig
- 6. whm Passwort ist ungültig
- 7. Path.GetTempFileName - Verzeichnisname ist ungültig
- 8. Cis: Objektname ist ungültig
- 9. AntiForgeryToken ist ungültig
- 10. JWT-Schlüssel ist ungültig
- 11. Sitzung nicht ordnungsgemäß ungültig, werfen "Sitzung ist ungültig"
- 12. Ruby-Rails - Formular ist ungültig
- 13. Quelldatei ist ungültig UTF-8
- 14. Der CSRF-Token ist ungültig
- 15. SQL Server-Abfrage ist ungültig
- 16. Warum ist die Namensvalidierung ungültig?
- 17. React.js - Der Elementtyp ist ungültig
- 18. MembershipCreateUserException - Der Benutzername ist ungültig
- 19. Der Wert "(String)" ist ungültig
- 20. Winsock-Client-Socket ist ungültig
- 21. LINQ: Angegebene Umwandlung ist ungültig
- 22. Angegebener Cast ist ungültig - C#
- 23. Fehler: Der Dienst ist ungültig
- 24. matplotlib - Valueerror: Gewicht ist ungültig
- 25. IDR - Datei ist ungültig PE
- 26. Sicherheits Header ist ungültig Fehlermeldung
- 27. Warum Django Rücksendeformular ist ungültig?
- 28. ModelState ist ungültig, Objekt ist in Ordnung?
- 29. Entweder ist der Zugangscode ist ungültig oder die OAuth-Token ist revoked.Details: ungültig _grant
- 30. mit Microsoft Gesicht api sein Objekt Rückkehr 400 das Bild ist ungültig oder Argument ist ungültig
Vielen Dank! Genau das habe ich gebraucht! –
[MS REST-API-Dokumentation] (https://docs.microsoft.com/en-us/rest/api/documentdb/querying-documentdb-resources-using-the-rest-api) dokumentiert das Filtern nach Partitionsschlüssel nicht ', es hat ein Header-Attribut' x-ms-partition-key', das ignoriert wird. Wenn der Headerwert 'x-ms-documentdb-query-enablecrosspartition' auf' true' gesetzt wird, werden Partitionen bei der Abfrage ignoriert. 'x-ms-documentdb-partitionkey' funktioniert - der Gotcha fügt in den ** Klammern **, nicht nur den Partitionsschlüssel hinzu. – SliverNinja
Hi Aravind, weißt du, wie der Partitionsschlüssel in einer Kosmos Stored Procedure angegeben werden sollte? Ich habe alle möglichen Kombinationen ausprobiert, habe aber kein Glück. eine Frage hier https://stackoverflow.com/questions/48900680/400-error-when-upsert-using-cosmos-sp – Illuminati