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

如何使用SharePoint 2013 REST API分别获取讨论列表的问题与回复

没问题!我来给你详细拆解怎么用SharePoint 2013的REST API分别获取讨论列表里的问题和回复,步骤都很直观~

获取讨论列表中的问题

讨论列表里的「问题」是列表的根级项目,对应的内容类型默认是「讨论」(中文环境)或者「Discussion」(英文环境)。你可以通过以下REST请求来获取所有问题:

请求示例(GET)

/_api/web/lists/getbytitle('你的讨论列表名称')/items?$filter=ContentType/Name eq '讨论'&$select=Id,Title,Body,Created,Author/Title&$expand=Author

关键说明:

  • 把你的讨论列表名称替换成实际的列表名称,比如「团队讨论区」
  • $filter用来筛选出内容类型为「讨论」的项目,确保只拿到问题而非回复
  • $select指定你需要返回的字段,比如标题、内容、创建时间、作者名称
  • $expand=Author用来关联获取作者的信息(默认REST不会返回关联字段的详细内容)
  • 请求头部需要包含Accept: application/json;odata=verbose,这样返回的是JSON格式的结构化数据
获取指定问题的回复

回复是关联到对应问题的子项目,默认内容类型是「消息」(中文)或者「Message」(英文),通过ParentItemId字段绑定到父问题的Id。

请求示例(GET)

假设你要获取Id为123的问题的所有回复,请求如下:

/_api/web/lists/getbytitle('你的讨论列表名称')/items?$filter=ParentItemId eq 123 and ContentType/Name eq '消息'&$select=Id,Title,Body,Created,Author/Title&$expand=Author&$orderby=Created asc

关键说明:

  • 把123替换成目标问题的实际Id
  • $filter同时筛选ParentItemId匹配问题Id和内容类型为「消息」,确保只拿到该问题的回复
  • $orderby=Created asc可以让回复按创建时间正序排列,符合讨论区的阅读逻辑
  • 同样需要带上Accept: application/json;odata=verbose的请求头部

额外提示:

如果需要一次性获取某个问题及其所有回复,也可以先拿到问题数据,再根据其Id发起回复请求;或者使用$expand关联查询(不过SharePoint 2013的REST对父子项的直接expand支持有限,分开请求更稳妥)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.15 08:37:20