【问题标题】:Error when creating a new item with Azure Cosmos DB使用 Azure Cosmos DB 创建新项目时出错
【发布时间】:2021-05-20 10:53:37
【问题描述】:

我正在使用由 HTTPTrigger 启动的 Azure 函数。在该函数中,我使用来自azure-cosmos 的CosmosClient。

client = CosmosClient(endpoint, key)
database = client.get_database_client(database-name)
container = database.get_container_client(container-name)
container.create_item(body=req_body)

在最后一行中,我尝试使用我在 HTTP 请求正文中收到的对象创建一个项目。我认为 Cosmos DB 会自动生成项目的 id。但是,我收到以下错误:

Exception: CosmosHttpResponseError: (BadRequest) Message: {"Errors":["The input content is invalid because the required properties - 'id; ' - are missing"]}

我真的需要为该项目分配一个 id 还是我遗漏了什么?根据文档,id 可以是“系统生成的或用户可配置的”

【问题讨论】:

  • 我的想法是,您可以尝试在请求中添加属性“id”以检查此“id”是否导致错误。

标签: azure azure-functions azure-cosmosdb azure-cosmosdb-sqlapi


【解决方案1】:

id 是必需属性。一些较旧的 SDK 可以选择将其自动生成为 Guid,但较新的 SDK 选择透明并明确地为用户提供选择。您可以使用 Guid 或任何其他与您相关的值。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-06-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-06-19
    • 1970-01-01
    • 2021-12-01
    相关资源
    最近更新 更多