如何获取office365 onedrive中包含的所有项目

问题描述 投票:0回答:3

我想通过一次 REST API 调用获取 Office365 OneDrive 文件夹中包含的所有文件和文件夹,是否有任何选项可以做到这一点?

onedrive office365api microsoft-graph-api
3个回答
0
投票

没有特定的 API 调用来检索云端硬盘的平面表示。不过,您可以使用驱动器的 search 方法来实现类似的效果。

只需传递一个空查询字符串,它将返回每个文件的元数据(无论其目录如何):

https://graph.microsoft.com/v1.0/me/drive/root/search(q='')


0
投票

here获得的另一种方法是使用Delta-Query:

https://graph.microsoft.com/v1.0/drives/[DRIVEID]/root/delta

这也适用于特定的 Item-Id:

https://graph.microsoft.com/v1.0/drives/[DRIVEID]/items/[ITEM ID]/delta

-1
投票

好的,尝试这个搜索请求:

https://graph.microsoft.com/v1.0/me/drive/root/search(q='%2A')

或者:

https://api.onedrive.com:443/v1.0/drives/(driveid)/items/(itemid)/view.search?q=%2A

其中 %2A 是星号,itemid 可能是根文件夹 ID。不要忘记分页。

或使用 OneDriveSDK:

_connection.SearchForItemsAsync(odFolder.ItemReference(), "*", ItemRetrievalOptions.Default)

不要在搜索查询中使用“展开”查询。 这应该递归地返回当前文件夹中的所有项目 - 子文件夹、子项目。

© www.soinside.com 2019 - 2024. All rights reserved.