【发布时间】:2013-09-23 17:04:12
【问题描述】:
请原谅,我对使用 REST 很陌生。
目前我正在使用 SP2013 Odata (_api/web/lists/getbytitle('<list_name>')/items?) 来获取列表的内容。该列表中有 199 个项目,所以我需要调用它两次,每次都要求一组不同的项目。我想我可以通过调用来做到这一点:
_api/web/lists/getbytitle('<list_name>')/items?$skip=100&$top=100
每次改变多少我都需要跳过。问题是这只会返回前 100 个项目。是我做错了什么还是 OData 服务中的 $skip 损坏了?
假设这种方法不起作用或不实用,是否有更好的方法来迭代 REST 调用?
我正在使用 JSON 协议,其 Accept 标头等于 application/json;odata=verbose
我想$top=100 并不是真的需要
编辑:我查了很多,我不完全确定这里的术语,但是如果您使用 SharePoint 2010 引入的方法,即_vti_bin/ListData.svc/<list_name>?$skip=100
实际上,很有趣的是,旧的方式并没有对退货设置 100 件商品的限制。所以跳过甚至没有必要。但是,如果您只想返回某段数据,则必须执行以下操作:
_vti_bin/ListData.svc/<list_name>?$skip=x&$top=(x+y)
每次通过循环你都会有类似x+=y的东西
您可以使用我上面描述的旧方法,也可以查看下面的答案,了解如何使用 SP2013 OData 执行此操作
【问题讨论】:
标签: json rest sharepoint