Sharepoint Graph API 从未列为驱动器的文档库下载文件("Site Pages" 和其他)

Sharepoint Graph API download file from Document library that are not listed as drive ("Site Pages" and others)

我正在尝试在 Sharepoint Graph 中找到一种方法 API 如何下载文档库中未列为驱动器(站点页面和其他)的文件。 如果我枚举列表,我会在列表中看到 "Site Pages":

https://graph.microsoft.com/v1.0/sites/<site id>/lists

我什至可以枚举列表中的项目:

https://graph.microsoft.com/v1.0/sites/<site id>/lists/<list id>/items

但我找不到获取内容(下载)那些项目(文件)的方法。 所有可用的 url 下载文件(获取内容)是下一个:

GET /drives/{drive-id}/items/{item-id}/content
GET /groups/{group-id}/drive/items/{item-id}/content
GET /me/drive/root:/{item-path}:/content
GET /me/drive/items/{item-id}/content
GET /sites/{siteId}/drive/items/{item-id}/content
GET /users/{userId}/drive/items/{item-id}/content

不提供获取内容的能力。 我找不到获取列表驱动器 ID 的方法,也没有 url 从列表中获取内容(即使它是文档库)。

请指教。 谢谢

驱动器资源表示用户的 OneDrive 或 SharePoint 中的文档库。虽然网站页面是一个页面库,而不是文档库,这就是它没有在驱动器请求中返回的原因。

我们建议您使用 SharePoint Rest 获取文件 API。

您可以调用以下端点进行检索:

  1. 站点上的所有文档库
  2. 文档库中的项目(从根)
  3. 下载项目的内容

这可能不是最有效的一组查询,但我在我的实验室租户中测试成功。

  1. https://graph.microsoft.com/(version)/sites/(site-id)/drives

  2. https://graph.microsoft.com/(version)/sites/(site-id)/drive/(drive-id)/root/children

  3. https://graph.microsoft.com/(version)/sites/(site-id)/drive/(drive-id)/items/(item-id)/content