Как предоставить ключ раздела с помощью хранимых процедур Azure - PullRequest
0 голосов
/ 15 октября 2018

Я использую API хранимых процедур в Azure Cosmos DB, но я получаю сообщение

{
"code": "BadRequest",
"message": "Message: {\"Errors\":[\"PartitionKey extracted from document doesn't match the one specified in the header\"]}\r\nActivityId: afd48989-60b5-489d-95ce-e999fc5561c9, Request URI: /apps/497cb807-5f70-43d9-a68c-a742815f6016/services/fae8a265-85a1-4d9b-904e-7a996901d928/partitions/ecdbf51b-d1f2-46d4-8b42-9ddbbf39aa1a/replicas/131818407837945845p, RequestStats: \r\nRequestStartTime: 2018-10-15T18:08:20.5929270Z, Number of regions attempted: 1\r\n, SDK: Microsoft.Azure.Documents.Common/2.1.0.0"
}

Я знаю , что Мне нужно предоставить ключ раздела, но яне уверен как до.Это в теле?Предоставлено в качестве заголовка?Я попробовал оба из них в Почтальоне без удачи.Используя Postman, как бы вы отформатировали свой запрос на отправку ключа раздела в хранимую процедуру?

Примеры, которые я пробовал (по запросу POST)

  1. Пробное добавлениезаголовок с именем "PartitionKey" со значением 51.

  2. Попытка отправки массива с ключом разделения ["51"] в теле raw, поскольку тело должно содержать массив параметров.

  3. Попробовал следующее необработанное тело json

    {
        "PartitionKey": "51"
    } 
    

1 Ответ

0 голосов
/ 16 октября 2018

На основании данных в формате cosmos db Общие заголовки запросов REST , вам необходимо указать ключ раздела с параметром x-ms-documentdb-partitionkey.

{x-ms-documentdb-partitionkey : '51',...}

Надеюсь, он вам поможет.

...