如何解决如何使用REST API递归获取SharePoint文档库的子文件夹,文件夹数和文件数?
假设我在SharePoint中有一个名为 FileManager 的文档库。在此文件管理器中,我有多个子文件夹,并且每个子文件夹都有多个文档。现在,我想计算有多少个文件夹和文档可用。
例如:子文件夹A,子文件夹B,子文件夹C->这三个子文件夹都位于文件管理器文档库下。现在,子文件夹可能有许多子文件夹。现在,我想遍历所有这些子文件夹及其子文件夹,以使用REST API获取其中的文件夹和文件数。
就像, 子文件夹A ---> 4个文件夹和100个文档 子文件夹B ---> 10个文件夹和22个文档
这就是结果的结果。
我们如何通过使用REST API实现这一目标?
解决方法
请参考以下方法:
端点:发布 /_api/Web/lists/getbytitle('Documents')/getitems
身体:
{
"query" : {
"__metadata": { "type": "SP.CamlQuery" },"ViewXml" : "<View Scope='RecursiveAll'><ViewFields><FieldRef Name='FileLeafRef' /></ViewFields><Query><Where><And><BeginsWith><FieldRef Name='FileRef' /><Value Type='Lookup'>/sites/sbdev/Shared Documents/Pictures</Value></BeginsWith><Eq><FieldRef Name='FSObjType' /><Value Type='Integer'>1</Value></Eq></And></Where></Query></View>"
}
}
有2个过滤器:
<BeginsWith><FieldRef Name='FileRef' /><Value Type='Lookup'>/sites/sbdev/Shared Documents/Pictures/</Value></BeginsWith>
此过滤器用于获取路径以'/ sites / sbdev / Shared Documents / Pictures /'开头的所有项目
<Eq><FieldRef Name='FSObjType' /><Value Type='Integer'>0</Value></Eq>
这是用于过滤文件夹/文件的
我已经在我的SP在线环境中对其进行了测试,请您尝试一下吗?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。