Azure CosmosDB 延续令牌结构
Azure CosmosDB Continuation Token Structure
我阅读了很多有关 CosmosDB 分页的文档,认为令牌应该如下所示:
{\"token\":\"xxxxxx\",\"range\":{\"min\":\"xxxxxxxxxx\",\"max\":\"xxxxxxxxxx\"}}
但我得到的令牌看起来像这样:
[{\"compositeToken\":{\"token\":\"xxxxxxxxx\",\"range\":{\"min\":\"\",\"max\":\"05C1B9CD673390\"}},\"orderByItems\":[{\"item\":24}],\"rid\":\"duJVAIns+3N6AAAAAAAAAA==\",\"skipCount\":0,\"filter\":null}]
我想知道令牌在什么情况下会有compositeToken
?
不是您问题的真正答案,但您不应尝试基于延续标记的结构构建逻辑。前段时间我也有同样的疑问,并向Cosmos DB团队询问了相同的解释。
有人告诉我应该将延续令牌视为不透明的,即您不应从延续令牌的值中推断出任何内容,也不应围绕其值构建任何应用程序逻辑。
应用程序代码唯一应该关心的是延续标记的存在与否。如果存在延续令牌,则意味着有更多数据可与您的查询相匹配,您应该将延续令牌与您的下一个请求一起传递,以获取下一组数据。如果继续标记不存在,则意味着没有更多数据匹配您的查询。
我阅读了很多有关 CosmosDB 分页的文档,认为令牌应该如下所示:
{\"token\":\"xxxxxx\",\"range\":{\"min\":\"xxxxxxxxxx\",\"max\":\"xxxxxxxxxx\"}}
但我得到的令牌看起来像这样:
[{\"compositeToken\":{\"token\":\"xxxxxxxxx\",\"range\":{\"min\":\"\",\"max\":\"05C1B9CD673390\"}},\"orderByItems\":[{\"item\":24}],\"rid\":\"duJVAIns+3N6AAAAAAAAAA==\",\"skipCount\":0,\"filter\":null}]
我想知道令牌在什么情况下会有compositeToken
?
不是您问题的真正答案,但您不应尝试基于延续标记的结构构建逻辑。前段时间我也有同样的疑问,并向Cosmos DB团队询问了相同的解释。
有人告诉我应该将延续令牌视为不透明的,即您不应从延续令牌的值中推断出任何内容,也不应围绕其值构建任何应用程序逻辑。
应用程序代码唯一应该关心的是延续标记的存在与否。如果存在延续令牌,则意味着有更多数据可与您的查询相匹配,您应该将延续令牌与您的下一个请求一起传递,以获取下一组数据。如果继续标记不存在,则意味着没有更多数据匹配您的查询。