odata nextLink 存在于每个响应中
odata nextLink is present in every response
我正在查询 Azure 活动目录以获取用户列表,但一个请求只能获取 100 条记录。
为了获得更多记录,我在 odata.nextLink 上提出请求。
问题是:
- 它始终存在,从不为空。
- 始终获取数据。
- 获取的数据重复。
为什么会这样?
谢谢
解决方法之一是,除了记录之外,我们还可以选择按页面获取。客户端可以使用值为“allpages”的 $inlinecount 查询选项来获取 return 集合中的项目总数。
{
"odata.metadata":"http://localhost/$metadata#Products",
"value":[
{ "ID":1,"Name":"Hat","Price":"15","Category":"Apparel" },
{ "ID":2,"Name":"Socks","Price":"5","Category":"Apparel" },
// Others not shown
],
"odata.nextLink":"http://localhost/Products?$inlinecount=allpages"
}
参数“allpages”指示服务器 return 总页数:
{
"odata.metadata":"http://localhost/$metadata#Products",
"odata.count":"50",
"value":[
{ "ID":1,"Name":"Hat","Price":"15","Category":"Apparel" },
{ "ID":2,"Name":"Socks","Price":"5","Category":"Apparel" },
// Others not shown
]
}
更多相关问题可以参考Server-Driven Paging。
我正在查询 Azure 活动目录以获取用户列表,但一个请求只能获取 100 条记录。
为了获得更多记录,我在 odata.nextLink 上提出请求。
问题是:
- 它始终存在,从不为空。
- 始终获取数据。
- 获取的数据重复。
为什么会这样?
谢谢
解决方法之一是,除了记录之外,我们还可以选择按页面获取。客户端可以使用值为“allpages”的 $inlinecount 查询选项来获取 return 集合中的项目总数。
{
"odata.metadata":"http://localhost/$metadata#Products",
"value":[
{ "ID":1,"Name":"Hat","Price":"15","Category":"Apparel" },
{ "ID":2,"Name":"Socks","Price":"5","Category":"Apparel" },
// Others not shown
],
"odata.nextLink":"http://localhost/Products?$inlinecount=allpages"
}
参数“allpages”指示服务器 return 总页数:
{
"odata.metadata":"http://localhost/$metadata#Products",
"odata.count":"50",
"value":[
{ "ID":1,"Name":"Hat","Price":"15","Category":"Apparel" },
{ "ID":2,"Name":"Socks","Price":"5","Category":"Apparel" },
// Others not shown
]
}
更多相关问题可以参考Server-Driven Paging。