我正在尝试获取在为 SharePoint 网站或 OneDrive 提供的日期之后修改的所有文件。
我递归地浏览驱动器的所有子项,但 /children 端点不支持过滤器。
使用驱动器/列表/项目具有相同的过滤限制。
我查看了 /delta 端点,它可以选择提供日期([示例](https://learn.microsoft.com/en-us/graph/api/driveitem-delta?view=graph-rest -1.0&tabs=http#example-4-retriving-delta-results-using-a-timestamp)) 但我注意到日期不能早于 2 个月,并且结果可能早于提供的日期。
我尝试使用/search,但没有得到结果:
drives/{'id'}/root/search(q='lastModifiedDateTime ge 2023-07-31T18:56:29Z')
问题:
有没有办法在为 SharePoint 或 OneDrive 提供的日期之后修改文件?
我是否一直在递归地遍历子级并在我这边执行过滤?
是否至少有一个端点无需递归查询即可获取所有数据?
我更喜欢 /search/query 端点,您可以在其中搜索驱动器项目并将搜索限制到特定站点并按日期进行过滤。
POST https://graph.microsoft.com/v1.0/search/query
{
"requests": [
{
"entityTypes": [
"driveItem"
],
"query": {
"queryString": "(LastModifiedTime>2023-12-25 AND path:\"https://contoso.sharepoint.com/sites/siteName\")"
}
}
]
}