Microsoft Graph API SharePoint 文件搜索
Posted
技术标签:
【中文标题】Microsoft Graph API SharePoint 文件搜索【英文标题】:Microsoft Graph API SharePoint Files Search 【发布时间】:2018-08-31 07:24:41 【问题描述】:我尝试在 SharePoint Document Library
上搜索文件(例如默认的“root”)。我通过上传或在线创建新的 Office 文件创建了一些测试文件,并提出了一些搜索请求,例如https://graph.microsoft.com/v1.0/sites/root/drive/root/search(q='query')
直到昨天一切正常。
现在我开始在SharePoint
上编辑文件或创建/上传新文件,并且使用此编辑或新文件,我遇到的问题是我在搜索它们时没有得到任何结果。 “旧”文件,我在开始时创建的,但我发现,只要我不编辑它们。
为了获得访问权限,我在 AAD 中注册了一个应用程序并为其提供了所需的权限(
Sites.Read.All, Sites.ReadWrite.All, Files.Read.All, Files.ReadWrite.All
使用https://graph.microsoft.com/v1.0/sites/root/drive/items/item-id/
直接访问特定文件也很有效。
【问题讨论】:
【参考方案1】:搜索将从索引数据中读取数据,但对库进行爬取和重新索引需要一些时间。所以你的代码为新文件返回 null:
https://graph.microsoft.com/v1.0/sites/root/drive/root/search(q='query')
以下代码直接获取库数据,而不是基于索引数据,所以效果很好。
https://graph.microsoft.com/v1.0/sites/root/drive/items/item-id/
【讨论】:
谢谢,但我的问题是我不知道item-id
,所以我必须搜索该项目。同时我为我的问题找到了另一种解决方案,因为我知道文件的路径,所以我使用此代码https://graph.microsoft.com/v1.0/sites/root/drives/root:/file-path:/
有没有办法触发或强制重新索引?以上是关于Microsoft Graph API SharePoint 文件搜索的主要内容,如果未能解决你的问题,请参考以下文章
获取 Microsoft Graph API 的有效访问令牌
Microsoft Graph API SharePoint 文件搜索
如何使用 microsoft graph api 获取 EndRecurrenceDate
Microsoft Graph API - 列出用户登录的所有权限/范围