Graph API Drive Items:列出项目时检索最新版本 ID

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

在列出文件夹的内容时,或在请求单个驱动器项目的元数据时,我想检索每个文件的最新文件版本标识符。

DriveItem
资源不包含任何
version
信息,仅通过附加API调用即可检索单个项目的版本。

当我列出一个包含多个文件的文件夹时,我想避免对每个文件进行额外的 API 调用。

是否有一种有效的方法来检索列表(或单个文件)的最新版本 ID,而无需执行额外的 API 请求,尤其是在文件夹内容列表的情况下无需执行 n + 1 请求?

microsoft-graph-api onedrive
2个回答
0
投票

您可以使用JSON Batching减少调用次数。这将允许您一次返回最多 20 个文件的

versions

一种技术是在

$top=20
查询上设置
/children
,然后为每个
DriveItems
提交批量请求。批处理完成后,您可以请求下一页的
@odata.nextLink
并重复批处理过程。这会将您的调用减少到每页数据仅 2 次。


0
投票

您可以使用

$expand=versions
查询选项来查询所有版本以及 DriveItem 信息。这将列出该项目的所有版本,您可以选择第一个版本来获取最新版本。

示例图形浏览器查询如下所示:

https://graph.microsoft.com/v1.0/me/drives/{drive-id}/items/{item-id}?$expand=versions
© www.soinside.com 2019 - 2024. All rights reserved.