Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/api/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Azure cosmosdb 通过Logic App和document&;中的PartitionKey不匹配在Cosmos DB中创建文档;标题_Azure Cosmosdb_Azure Logic Apps - Fatal编程技术网

Azure cosmosdb 通过Logic App和document&;中的PartitionKey不匹配在Cosmos DB中创建文档;标题

Azure cosmosdb 通过Logic App和document&;中的PartitionKey不匹配在Cosmos DB中创建文档;标题,azure-cosmosdb,azure-logic-apps,Azure Cosmosdb,Azure Logic Apps,所以我正在尝试创建一个Azure Logic应用程序,它将在Cosmos DB集合中创建一个新记录来存储审核结果 我已经创建了一个Cosmos DB数据库(名为icecream)+集合(名为reviews)。reviews集合的分区键是/flavorIdentifier 在我的逻辑应用程序中,我有一个插入新文档的步骤。 代码如下所示 "Create_review": { "inputs": { "body": { "flavor": "@{bo

所以我正在尝试创建一个Azure Logic应用程序,它将在Cosmos DB集合中创建一个新记录来存储审核结果

我已经创建了一个Cosmos DB数据库(名为
icecream
)+集合(名为
reviews
)。
reviews
集合的分区键是
/flavorIdentifier

在我的逻辑应用程序中,我有一个插入新文档的步骤。

代码如下所示

"Create_review": {
    "inputs": {
        "body": {
            "flavor": "@{body('JSON_parseren_2')?['flavor']}",
            "flavorIdentifier": "@{body('JSON_parseren')?['itemOrdered']}",
            "id": "@{guid()}",
            "review": "@{body('E-mail_met_opties_verzenden')?['SelectedOption']}"
        },
        "headers": {
            "x-ms-documentdb-raw-partitionkey": "@body('JSON_parseren')?['itemOrdered']"
        },
        "host": {
            "connection": {
                "name": "@parameters('$connections')['documentdb']['connectionId']"
            }
        },
        "method": "post",
        "path": "/dbs/@{encodeURIComponent('icecream')}/colls/@{encodeURIComponent('reviews')}/docs"
    },
    "runAfter": {
        "E-mail_met_opties_verzenden": [
            "Succeeded"
        ]
    },
    "type": "ApiConnection"
},
所以,我把这条消息发到宇宙数据库

{
    "flavor": "My flavor",
    "flavorIdentifier": "3",
    "id": "4927042a-faa1-4e09-9c6d-d038ef659b25",
    "review": "Very satisfied"
}
如您所见,我还将分区键指定为与
flavorIdentifier
相同的值。 我想这应该行得通。但事实并非如此

我正在接收的错误状态

从文档中提取的PartitionKey与标头中指定的不匹配

这很奇怪,因为在检查原始输入和输出时,两者都有相同的值。有什么我忽略的吗

为完整起见,请参阅此步骤的完整输入和输出

失败步骤的原始输入

{
    "host": {
        "connection": {
            "name": "/subscriptions/3b3729b4-021a-48b5-a2eb-47be0c7e7f44/resourceGroups/developerday-workshop/providers/Microsoft.Web/connections/documentdb"
        }
    },
    "method": "post",
    "path": "/dbs/icecream/colls/reviews/docs",
    "headers": {
        "x-ms-documentdb-raw-partitionkey": "3"
    },
    "body": {
        "flavor": "My flavor",
        "flavorIdentifier": "3",
        "id": "4927042a-faa1-4e09-9c6d-d038ef659b25",
        "review": "Very satisfied"
    }
}
{
    "statusCode": 400,
    "headers": {
        "x-ms-last-state-change-utc": "Wed,27 Mar 2019 05:03:54.568 GMT",
        "lsn": "1",
        "x-ms-schemaversion": "1.7",
        "x-ms-quorum-acked-lsn": "1",
        "x-ms-substatus": "1001",
        "x-ms-current-write-quorum": "3",
        "x-ms-current-replica-set-size": "4",
        "x-ms-xp-role": "1",
        "x-ms-global-Committed-lsn": "1",
        "x-ms-number-of-read-regions": "0",
        "x-ms-transport-request-id": "1",
        "x-ms-cosmos-llsn": "1",
        "x-ms-cosmos-quorum-acked-llsn": "1",
        "x-ms-session-token": "1",
        "x-ms-request-charge": "1.24",
        "x-ms-serviceversion": "version=2.2.0.0",
        "x-ms-activity-id": "bd428162-ec1a-4f50-879a-04b8ca0817a1",
        "Strict-Transport-Security": "max-age=31536000",
        "x-ms-gatewayversion": "version=2.2.0.0",
        "Timing-Allow-Origin": "*",
        "x-ms-apihub-cached-response": "false",
        "Date": "Wed, 27 Mar 2019 11:39:57 GMT",
        "Content-Length": "1149",
        "Content-Type": "application/json"
    },
    "body": {
        "code": "BadRequest",
        "message": "Message: {\"Errors\":[\"PartitionKey extracted from document doesn't match the one specified in the header\"]}\r\nActivityId: bd428162-ec1a-4f50-879a-04b8ca0817a1, Request URI: /apps/9bc5d0cc-9b7c-4b1d-9be2-0fa2654271c4/services/9d84c048-383b-498e-8472-1f57da72135d/partitions/0f29761a-9ffc-4560-94ce-0328c3c79f92/replicas/131981366274575376p/, RequestStats: \r\nRequestStartTime: 2019-03-27T11:39:57.0795308Z, RequestEndTime: 2019-03-27T11:39:57.0995601Z, Number of regions attempted: 1\r\nResponseTime: 2019-03-27T11:39:57.0995601Z, StoreResult: StorePhysicalAddress: rntbd://cdb-ms-prod-westeurope1-fd21.documents.azure.com:16833/apps/9bc5d0cc-9b7c-4b1d-9be2-0fa2654271c4/services/9d84c048-383b-498e-8472-1f57da72135d/partitions/0f29761a-9ffc-4560-94ce-0328c3c79f92/replicas/131981366274575376p/, LSN: 1, GlobalCommittedLsn: 1, PartitionKeyRangeId: 0, IsValid: True, StatusCode: 400, SubStatusCode: 1001, RequestCharge: 1.24, ItemLSN: -1, SessionToken: 1, UsingLocalLSN: False, TransportException: null, ResourceType: Document, OperationType: Create\r\n, SDK: Microsoft.Azure.Documents.Common/2.2.0.0"
    }
}
失败步骤的原始输出

{
    "host": {
        "connection": {
            "name": "/subscriptions/3b3729b4-021a-48b5-a2eb-47be0c7e7f44/resourceGroups/developerday-workshop/providers/Microsoft.Web/connections/documentdb"
        }
    },
    "method": "post",
    "path": "/dbs/icecream/colls/reviews/docs",
    "headers": {
        "x-ms-documentdb-raw-partitionkey": "3"
    },
    "body": {
        "flavor": "My flavor",
        "flavorIdentifier": "3",
        "id": "4927042a-faa1-4e09-9c6d-d038ef659b25",
        "review": "Very satisfied"
    }
}
{
    "statusCode": 400,
    "headers": {
        "x-ms-last-state-change-utc": "Wed,27 Mar 2019 05:03:54.568 GMT",
        "lsn": "1",
        "x-ms-schemaversion": "1.7",
        "x-ms-quorum-acked-lsn": "1",
        "x-ms-substatus": "1001",
        "x-ms-current-write-quorum": "3",
        "x-ms-current-replica-set-size": "4",
        "x-ms-xp-role": "1",
        "x-ms-global-Committed-lsn": "1",
        "x-ms-number-of-read-regions": "0",
        "x-ms-transport-request-id": "1",
        "x-ms-cosmos-llsn": "1",
        "x-ms-cosmos-quorum-acked-llsn": "1",
        "x-ms-session-token": "1",
        "x-ms-request-charge": "1.24",
        "x-ms-serviceversion": "version=2.2.0.0",
        "x-ms-activity-id": "bd428162-ec1a-4f50-879a-04b8ca0817a1",
        "Strict-Transport-Security": "max-age=31536000",
        "x-ms-gatewayversion": "version=2.2.0.0",
        "Timing-Allow-Origin": "*",
        "x-ms-apihub-cached-response": "false",
        "Date": "Wed, 27 Mar 2019 11:39:57 GMT",
        "Content-Length": "1149",
        "Content-Type": "application/json"
    },
    "body": {
        "code": "BadRequest",
        "message": "Message: {\"Errors\":[\"PartitionKey extracted from document doesn't match the one specified in the header\"]}\r\nActivityId: bd428162-ec1a-4f50-879a-04b8ca0817a1, Request URI: /apps/9bc5d0cc-9b7c-4b1d-9be2-0fa2654271c4/services/9d84c048-383b-498e-8472-1f57da72135d/partitions/0f29761a-9ffc-4560-94ce-0328c3c79f92/replicas/131981366274575376p/, RequestStats: \r\nRequestStartTime: 2019-03-27T11:39:57.0795308Z, RequestEndTime: 2019-03-27T11:39:57.0995601Z, Number of regions attempted: 1\r\nResponseTime: 2019-03-27T11:39:57.0995601Z, StoreResult: StorePhysicalAddress: rntbd://cdb-ms-prod-westeurope1-fd21.documents.azure.com:16833/apps/9bc5d0cc-9b7c-4b1d-9be2-0fa2654271c4/services/9d84c048-383b-498e-8472-1f57da72135d/partitions/0f29761a-9ffc-4560-94ce-0328c3c79f92/replicas/131981366274575376p/, LSN: 1, GlobalCommittedLsn: 1, PartitionKeyRangeId: 0, IsValid: True, StatusCode: 400, SubStatusCode: 1001, RequestCharge: 1.24, ItemLSN: -1, SessionToken: 1, UsingLocalLSN: False, TransportException: null, ResourceType: Document, OperationType: Create\r\n, SDK: Microsoft.Azure.Documents.Common/2.2.0.0"
    }
}

有什么想法吗?

请在您的分区键周围添加双引号
,这样对我来说效果很好

查看代码:


哇,这么明显的错误。谢谢