Azure CosmosDB。存储过程中的继续令牌长度
Posted
技术标签:
【中文标题】Azure CosmosDB。存储过程中的继续令牌长度【英文标题】:Azure CosmosDB. Continuation token length in stored procedure 【发布时间】:2020-09-24 15:45:41 【问题描述】:我有一个 REST API,它旨在使用类似 OData 的语法查询存储在 CosmosDB 中的文档。我正在返回带有块的文件。 IE。我正在设置 $top=10 并获得 10 个带有延续令牌的文档。这个延续令牌是从存储过程中返回的:
var accepted = collection.queryDocuments(collection.getSelfLink(),
sql, requestOptions,
function (err, documents, responseOptions)
// ...
// put responseOptions.continuation into response body
);
问题是,如果延续令牌很长(即 6k 个字符),我将其传递到 URL 中,无法处理 URL,并且我无法访问我的端点(得到 404)。据我了解,更复杂的初始 SQL 查询是延续令牌越长,无法设置其长度。
有解决办法吗?
【问题讨论】:
【参考方案1】:不要认为这个问题会有现成的解决方案。您可以尝试在您的服务层实现微型 url 类型的框架。 https://www.geeksforgeeks.org/how-to-design-a-tiny-url-or-url-shortener/
【讨论】:
以上是关于Azure CosmosDB。存储过程中的继续令牌长度的主要内容,如果未能解决你的问题,请参考以下文章
在哪里存储以及如何在客户端维护来自 cosmos db 的延续令牌
您应该为 VNET 专用终结点的每个 Azure 资源(CosmosDB、KeyVault、存储)创建多个子网还是只使用一个?
无法使用 azure JavaScript 函数和 Key Vault 机密检索 cosmosDB 数据
无法使用microsoft.azure.documentdb.core更新Azure CosmosDB中的文档