【问题标题】:Azure Document DB : Creation of a collection is throwing "DocumentClientException" with error message "Session token specified is invalid"Azure 文档数据库:创建集合时抛出“DocumentClientException”,错误消息“指定的会话令牌无效”
【发布时间】:2019-05-11 07:45:19
【问题描述】:

当且仅当数据库中不存在具有指定名称的集合时,我在创建具有给定名称的集合的工作流中遇到以下异常"Microsoft.Azure.Documents.DocumentClientException: Message: {"Errors":["Session token specified is invalid."]}"。我正在尝试通过调用 documentClient.CreateDocumentCollectionAsync 来从工作角色执行此 sn-p。

var documentCollection = new DocumentCollection
            {
                Id = "xyz",
            }
documentClient.CreateDocumentCollectionAsync(UriFactory.CreateDatabaseUri(dbName), documentCollection)

我已确保正确指定了文档 db uri 和密钥。 谁能解释这里发生了什么? 我无法从文档中获得太多帮助。

【问题讨论】:

  • 您是否为操作提供会话令牌或x-ms-session-token 标头?
  • @NickChapsas 我没有指定任何会话令牌。
  • @Nithin 你好,你的应用场景是什么?它很难在我这边重现您的问题。您能发布更多详细信息让我帮助您吗?
  • 我有一个控制台应用程序,它调用文档数据库来填充数据。我通过启用远程桌面直接在辅助角色 vm 上运行它。

标签: azure azure-cosmosdb document-database


【解决方案1】:

您可以尝试指定分区键吗?您应该在创建集合时设置它。

var partitionKeyDefinition = new PartitionKeyDefinition();
partitionKeyDefinition.Paths.Add("/partitionKey");

var collectionDefinition = new DocumentCollection
{
    Id = collectionId,
    PartitionKey = partitionKeyDefinition 
};

【讨论】:

    猜你喜欢
    • 2019-08-03
    • 1970-01-01
    • 2015-07-03
    • 2016-10-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多