Почтальон: не удается создать документ с помощью API Azure MongoDB - PullRequest
0 голосов
/ 07 декабря 2018

При создании документа с помощью Azure Cosmos DB: MongoDB API у меня возникают следующие проблемы, которые зависят от параметров.

При создании коллекции UserProfile я создал еес ключом раздела username.

Request1: - без ключа раздела

Заголовки:

x-ms-documentdb-is-upsert: true

Корпус:

{"username": "test"}

Проблема:

Ключ раздела, указанный в заголовке x-ms-partitionkey, содержит меньше компонентов, чем определено в коллекции.

Request2: - с ключом разделения

Заголовки:

x-ms-documentdb-is-upsert: true
x-ms-documentdb-partitionkey: ["username"]

Тело:

{"username": "test"}

Проблема:

Один из указанных входовневерен

Запрос 3: - с указанием ключа раздела и идентификатора в теле

Заголовки:

x-ms-documentdb-is-upsert: true
x-ms-documentdb-partitionkey: ["username"]

Тело:

{"id": "test", "username": "test"}

Проблема:

PartitionKey, извлеченный из документа, не соответствует указанному в заголовке

В любом случае

Яне удалось создать документ.Какие параметры необходимы для создания документа с указанным разделом?

1 Ответ

0 голосов
/ 08 декабря 2018

Две точки:

  1. Если вы используете Mongo API, вам не следует использовать REST API.Хотя это технически возможно, его нельзя использовать вместе.100% не рекомендуется.

  2. ключом раздела должно быть значение ключа раздела, а не сам путь, поэтому это будет "test", а не "username".Он уже знает, что «имя пользователя» - это путь.

...