You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

求助:获取SharePoint视图项目数量API报错,求Postman可用请求示例

SharePoint 视图项目数量获取API解决方案

问题根源

你之前的API请求错误是因为视图(List View)是属于列表(List)的资源,而非文件夹(Folder),调用GetFolderByServerRelativeUrl后访问Views集合自然会返回资源找不到的错误。

Postman可用API请求方案

方案1:直接获取视图的ItemCount属性(简单但需注意阈值)

如果目标视图是索引视图(避免列表超过5000项时的阈值错误),可以直接请求视图的ItemCount属性:

请求信息

  • 请求方法:GET
  • URL:
https://[SHAREPOINT]/sites/TestSJTemp/_api/web/lists/getbytitle('EXP2')/Views/getbyid('aef46c6f-4901-4e3e-876f-6b55549b945d')?$select=ItemCount
  • 请求头:
    • Accept: application/json;odata=verbose

说明

  • 用视图ID比标题更可靠,避免名称空格/特殊字符编码问题
  • 如果列表超过5000项且视图未做索引,会返回阈值错误,此时改用方案2

方案2:通过视图查询发起计数请求(适合大列表)

先获取视图的查询规则,再用该规则执行计数查询,不受列表阈值限制(只要查询符合索引要求):

步骤1:获取目标视图的ViewQuery

  • 请求方法:GET
  • URL:
https://[SHAREPOINT]/sites/TestSJTemp/_api/web/lists/getbytitle('EXP2')/Views/getbyid('aef46c6f-4901-4e3e-876f-6b55549b945d')?$select=ViewQuery
  • 请求头:Accept: application/json;odata=verbose
  • 从响应中提取ViewQuery字段的内容(示例格式:<Where><Eq><FieldRef Name='Status'/><Value Type='Text'>Active</Value></Eq></Where>)

步骤2:发起计数请求

  • 请求方法:POST
  • URL:
https://[SHAREPOINT]/sites/TestSJTemp/_api/web/lists/getbytitle('EXP2')/getitems?$inlinecount=allpages
  • 请求头:
    • Accept: application/json;odata=verbose
    • Content-Type: application/json;odata=verbose
  • 请求体(JSON):
{
  "query": {
    "ViewXml": "<View><Query>[替换为步骤1获取的ViewQuery内容]</Query><RowLimit>0</RowLimit></View>"
  },
  "RowLimit": 0
}
  • 响应中的d.__count字段即为视图对应的项目总数量

说明

  • 该方法适合超大型列表(4万+项),只要视图的查询条件基于索引字段,就不会触发阈值错误
  • 确保ViewXml格式正确,不要遗漏<View>和<Query>标签

关键注意事项

  • 替换URL中的[SHAREPOINT]为你的实际SharePoint域名
  • 确认列表标题为EXP2(从你提供的页面URL可验证)
  • Postman中需配置对应身份验证:根据SharePoint环境类型,选择OAuth2或NTLM身份验证

内容的提问来源于stack exchange,提问作者user3803807

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.01 11:57:32