逻辑应用程序和 CosmosDB
Logic Apps and CosmosDB
所以我正在尝试做一些我认为很简单的事情 - 使用 Logic App 将 json object 插入 Cosmos DB。
我创建了一个 CosmosDB(基于 Core SQL API)并创建了一个名为 Archive 的容器,分区键为 /username(在我的 json object).
现在到逻辑应用程序。
首先,我使用了简单的 YOLO 方法。
这给了我错误:“输入内容无效,因为缺少所需的属性 - 'id; '”
但是我的 json object 没有 id 字段。也许使用 IsUpsert 参数?我不想操纵我的输入文档来添加一个名为 'id' 的字段。
这给了我错误:“指定的输入之一无效” 好的 - 感觉更糟。
我现在尝试使用其他逻辑应用连接器(不是 V2,而是原始连接器)。
这给了我错误:“x-ms-partitionkey header 中提供的分区键的组件少于 collection 中定义的组件。”
我看到这个连接器(与 V2 不同)有一个来自 UI 的分区键值参数,我添加它是为了传递我的用户名
的值
这给了我错误 “输入内容无效,因为缺少必需的属性 - 'id; '”.
在这一点上我想,让我给这该死的机器它想要的,所以我在我的 json object. 中添加了“id”
是的,确实有效。
所以问题是
- 使用 Logic Apps 连接器,您是否只能将 json object 插入 Cosmos DB 而消息负载中没有魔法字段“id”?
- 如果需要分区键。为什么它在 V2 连接器参数 UI 中不可用?
谢谢。
这个东西的 v1 版本没有分区键,因为它太旧了,Cosmos 没有分区容器。您将需要使用 v2 预览版。我认为它很快就会在某个时候正式发布,因为它已经预览了一段时间了。
是的,使用 Cosmos DB 时,如果没有它的 ID,您将无法插入任何内容,因此您需要从任何调用端点的内容生成并将其传递到 http 请求的正文中。
所以我正在尝试做一些我认为很简单的事情 - 使用 Logic App 将 json object 插入 Cosmos DB。
我创建了一个 CosmosDB(基于 Core SQL API)并创建了一个名为 Archive 的容器,分区键为 /username(在我的 json object).
现在到逻辑应用程序。
首先,我使用了简单的 YOLO 方法。
这给了我错误:“输入内容无效,因为缺少所需的属性 - 'id; '”
但是我的 json object 没有 id 字段。也许使用 IsUpsert 参数?我不想操纵我的输入文档来添加一个名为 'id' 的字段。
这给了我错误:“指定的输入之一无效” 好的 - 感觉更糟。
我现在尝试使用其他逻辑应用连接器(不是 V2,而是原始连接器)。
这给了我错误:“x-ms-partitionkey header 中提供的分区键的组件少于 collection 中定义的组件。”
我看到这个连接器(与 V2 不同)有一个来自 UI 的分区键值参数,我添加它是为了传递我的用户名
这给了我错误 “输入内容无效,因为缺少必需的属性 - 'id; '”.
在这一点上我想,让我给这该死的机器它想要的,所以我在我的 json object.
是的,确实有效。
所以问题是
- 使用 Logic Apps 连接器,您是否只能将 json object 插入 Cosmos DB 而消息负载中没有魔法字段“id”?
- 如果需要分区键。为什么它在 V2 连接器参数 UI 中不可用?
谢谢。
这个东西的 v1 版本没有分区键,因为它太旧了,Cosmos 没有分区容器。您将需要使用 v2 预览版。我认为它很快就会在某个时候正式发布,因为它已经预览了一段时间了。
是的,使用 Cosmos DB 时,如果没有它的 ID,您将无法插入任何内容,因此您需要从任何调用端点的内容生成并将其传递到 http 请求的正文中。