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

参考: https://docs.microsoft.com/en-us/aspnet/web-api/overview/odata-support-in-aspnet-web-api/supporting-odata-query-options#server-driven-paging