【问题标题】:DocumentDb feedResponse.ResponseContinuation JSONDocumentDb feedResponse.ResponseContinuation JSON
【发布时间】:2017-07-12 18:23:34
【问题描述】:
当我在 DocumentDb NoSQL 数据库上查询文档时得到延续令牌时,我得到 feedResponse.ResponseContinuation JSON
{
"token":"+RID:r+xQAPHUJQANAAAAAAAAAA==#RT:1#TRC:10#FPC:AQ0AAAAAAAAAIAAAAAAAAAA=",
"range":{"min":"","max":"FF"}
}
您能解释一下每个字段的含义吗?以及如何设置/计算这些值? "token" 值是否加密?
谢谢。
【问题讨论】:
标签:
c#
azure
pagination
azure-cosmosdb
【解决方案1】:
您能解释一下每个字段的含义吗?以及价值观如何
设置/计算? “令牌”值是否加密?
响应标头中存在延续令牌意味着有更多数据可用于您发出的请求。
您不应尝试将此值解释为Opaque。 opaque 我的意思是,你不应该围绕这个延续令牌的值来构建你的业务逻辑,因为根据我的经验,在不同的情况下你会收到不同的值。
例如,我们在不同情况下会收到以下令牌:
在一个例子中,我们收到了以下信息:
{"token":"-RID:4pVnPNKLRAAGAAAAAAAAAA==#RT:1#TRC:2","range":{"min":"","max":"FF"}}。
然而,在另一个例子中,我们收到了以下信息:
{"token":null,"range":{"min":"05D1A53CB92960","max":"05D1B53CB92960"}}。
还有一个:
+RID:4pVnAO6fMNADAAAAAAACAAQ==#RT:1#TRC:2#FPC:ALMABAAAAIABAwAAAAAAgAE=
如您所见,这个代币的价值背后没有押韵或理由。
您的代码应该做的是检查响应标头中是否存在延续令牌,如果存在,则将其包含在您的下一个请求中以获取下一组数据。