MSGraphMailbag - 只搜索文件类型的DriveItems

Posted Justin-Liu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MSGraphMailbag - 只搜索文件类型的DriveItems相关的知识,希望对你有一定的参考价值。

本篇我们将使用 Microsoft Graph 上的 Microsoft Search API 来获取只有文件/文档的结果。

引言

让我们来考虑如何使用 Microsoft Graph 上的 Microsoft Search API 来搜索 OneDrive 或 SharePoint 上的文件/文档。默认情况下,当你指定 driveItem 的 entityType 时,这将返回文件、文件夹、页面和新闻。下面是一个来自 Microsoft Graph 资源管理器的示例,用于查询 driveItem 内容。
POST https://graph.microsoft.com/v1.0/search/query


  "requests":[
    
      "entityTypes":[
        "driveItem"
      ],
      "query":
        "queryString":"contoso"
      
    
  ]

下图是一个结果示例,第一个结果为网页文件。

解决方案

为了只过滤文件/文档,我们可以在请求的 query 元素的 queryString 属性中添加以下任意一个 (ContentType或ContentTypeId)。

"query": 
  "queryString": "test document AND ContentType:Document"

"query": 
  "queryString": "test document AND ContentTypeId:0x0101*"

再来看一下同一个环境下,应用过滤之后的结果,如下图,第一个结果是文件了。

最终使用的查询为
POST https://graph.microsoft.com/v1.0/search/query


  "requests":[
    
      "entityTypes":[
        "driveItem"
      ],
      "query":
        "queryString":"contoso AND ContentType:Document"
      
    
  ]

以上是关于MSGraphMailbag - 只搜索文件类型的DriveItems的主要内容,如果未能解决你的问题,请参考以下文章

MSGraphMailbag - 使用 Microsoft Graph SDK 的 LargeFileUploadTask 上传大文件

MSGraphMailbag - 使用 Microsoft Graph SDK 的 LargeFileUploadTask 上传大文件

MSGraphMailbag - 用于测试的 Azure AD 应用程序和用户

MSGraphMailbag - 用于测试的 Azure AD 应用程序和用户

MSGraphMailbag - 探索通过 Postman 调用 Microsoft Graph

MSGraphMailbag - 探索通过 Postman 调用 Microsoft Graph