odata - Office 365 Sharepoint API $skip/$skiptoken 功能

标签 odata office365

浏览 Sharepoint API 的文档(位于此处:http://msdn.microsoft.com/en-us/library/office/dn605900(v=office.15).aspx)我试图弄清楚如何选择文档 block 。我期待 $skip 能够工作,因为它暗示应该存在大多数 OData 功能,但这不起作用。我也无法弄清楚 $skiptoken 是否是有效的查询参数。它列在底部附近的文档中(没有进一步解释),但到目前为止我无法从中得到正确的结果。

如果有人知道 $skip 或 $skiptoken 或其他可用于获取分 block 响应的方法,那么解决这个问题会很棒!

编辑:澄清一下,像 API_URL/files?$orderby=url&$top=5 这样的东西可以工作,但是像 API_URL/files?$orderby=url&$skip=50 这样的东西不能。但是,我刚刚在响应中找到了一个“下一个”URL,它似乎提供了服务器端分页支持。我将尝试从这里弄清楚 $skiptoken 的使用。

最佳答案

OData V4 协议(protocol)已指定(引用 11.2.5.7 Server-Driven Paging):

OData services may use the reserved system query option $skiptoken when building next links. Its content is opaque, service-specific, and must only follow the rules for URL query parts. OData clients MUST NOT use the system query option $skiptoken when constructing requests.



因此,O365 SharePoint API 的实现将 $skiptoken 作为查询选项发布,客户端应使用该选项排除查询集合中的前几个项目,这违反了协议(protocol)。对于这种情况,客户端应该使用 $skip。但是从您附加的 O365 规范看来, $skip 没有实现。

如果您查询 O365 服务的实体集并且响应负载包含下一个链接(响应 JSON 对象中的 @odata.nextLink 注释),则表明该服务具有实体集的服务器端分页。通常,下一个链接是包含 $skiptoken 查询选项的 URL,例如 http://host/service/entityset?$skiptoken=n客户端可以用来获取下一页。

关于odata - Office 365 Sharepoint API $skip/$skiptoken 功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26305776/

相关文章:

c# - 返回 TypeMismatchRelationshipConstraint 的 WCF 元数据

c# - 在 OData4 中定义自定义字符串函数

.net - 公开 DTO 时的 ApiController 与 ODataController

c# - 在 ASP.NET Core WebAPI 中获取 OData 计数

javascript - 是否可以使用Office Graph API查询企业新闻?

javascript - CRM 2011 - 使用 JavaScript 保存时进行重复检测

python - 使用 python pandas 读取 sharepoint excel 文件

office365 - Office 365 API 或 Azure AD Graph API - 获取其他人的日历

excel - 如何使用 Excel 根据条件从数组中获取范围

outlook - 使用 MS Microsoft Graph 按类别获取和过滤 Outlook 事件