如何使用Graph API获取SharePoint Online团队站点内的文档
你已经通过组查询接口拿到了目标团队站点对应的组ID,接下来按以下步骤操作即可:
- 第一步:获取组关联的默认文档库ID
调用接口:https://graph.microsoft.com/v1.0/groups/{替换为你拿到的组ID}/drive
返回结果中的id字段就是文档库ID,可通过displayName、webUrl字段核对是否为目标库。 - 第二步:获取根目录下的文件和文件夹
调用接口返回根目录第一层所有内容:https://graph.microsoft.com/v1.0/drives/{替换为文档库ID}/root/children
返回条目中带folder属性的为文件夹,带file属性的为文件。 - 第三步:获取指定子文件夹下的内容
如果需要查询特定子文件夹内的内容,使用相对路径调用即可:https://graph.microsoft.com/v1.0/drives/{替换为文档库ID}/root:/{替换为文件夹相对路径}:/children
示例:查询根目录下「运营报表」文件夹的内容,接口为https://graph.microsoft.com/v1.0/drives/xxxx-xxxx/root:/运营报表:/children - 可选:一次性获取所有层级内容
如果需要递归获取所有层级的文件、文件夹,添加$expand=children参数:https://graph.microsoft.com/v1.0/drives/{替换为文档库ID}/root?$expand=children
注意事项:
- 调用以上接口需要先给应用授予
Files.Read.All或Sites.Read.All的权限,否则会返回403错误- 如果站点内文件数量较多,接口会返回
@odata.nextLink分页字段,需要循环请求该地址获取全量数据
内容的提问来源于stack exchange,提问作者Asmi
相关产品推荐
相关产品推荐

