Graph API是否有类似SharePoint REST API的递归获取列表文件的端点?
Graph API 支持递归获取 SharePoint 列表中的所有文件,无需依赖 SharePoint REST API 里的 /files 端点,具体实现方式如下:
核心实现方案
结合筛选与展开参数:通过
$filter筛选文件,搭配$expand关联文件夹结构,同时利用分页处理大量文件:GET /sites/{site-id}/lists/{list-id}/items?$filter=isDocument eq true&$expand=parentFolder&$top=5000注:
$top=5000是 Graph API 单页最大返回量,若文件总数超过该值,需通过响应中的@odata.nextLink发起分页请求。使用搜索 API 直接递归检索:这种方式更高效,能自动遍历所有子文件夹:
GET /sites/{site-id}/search(q='contentclass:STS_ListItem_DocumentLibrary')?$select=id,name,webUrl,file该请求会返回站点下所有文档库内的文件,包含所有子文件夹中的内容。
关于你尝试的过滤方式说明
你之前测试的 /items?$isDocument=true、/items?$filter=isDocument eq true、/items?$filter=contentType.name eq 'Document' 写法本身有效,但默认仅返回列表根目录的文件,不会递归子文件夹,需结合上述方案实现全量递归获取。
内容的提问来源于stack exchange,提问作者datRedHeadedGuy
相关产品推荐
相关产品推荐

