microsoft-graph-api - 如何使用 Microsoft Graph API for OneDrive 获取 mimetype 和文件 ID?
问题描述
我们正在将我们的产品与 MS OneDrive 集成。我们的用户将连接他们的 MS 帐户并选择他们希望我们从中提取文件的文件夹。我们的系统仅支持某些文件类型,因此我们必须在发出请求后获取 mimetype 信息和文件 ID。但是我们找不到一个可以带回这两条信息的请求,因此我们可以确定是否应该提取文件。
这很接近,但它没有给我们 mimetype 信息。
https://docs.microsoft.com/en-us/onedrive/developer/rest-api/api/drive_recent?view=odsp-graph-online
有人有想法么?
解决方案
该get
方法可让您检索有关文件的各种信息:https ://docs.microsoft.com/en-us/onedrive/developer/rest-api/api/driveitem_get?view=odsp-graph-online
它返回一个driveItem
具有file
属性的对象。并且该file
属性具有mimeType
属性。请参阅此处https://docs.microsoft.com/en-us/onedrive/developer/rest-api/resources/driveitem?view=odsp-graph-online和此处https://docs.microsoft.com/en-us /onedrive/developer/rest-api/resources/file?view=odsp-graph-online。
不幸的是,这意味着您需要不止一个请求才能获得所需的信息。
如果按文件名后缀过滤对您来说足够好,您可以像这样查询 OneDrive:
POST /search/query
Content-Type: application/json
{
"requests": [
{
"entityTypes": [
"driveItem"
],
"query": {
"queryString": "filetype:docx OR filetype:doc"
}
}
]
}
文档:https ://docs.microsoft.com/en-us/graph/search-concept-files#example-5-use-filters-in-search-queries
推荐阅读
- ocaml - OCaml 中有没有办法在记录中声明一个整数,它是一些整数的间隔?
- laravel-7 - 我无法在 laravel 7 中重置密码
- pyspark - pyspark中for循环内的过滤器真的很慢
- r - 使用 for 循环将图层写入空间数据库
- docker - Jira 通过 docker-compose 在启动时崩溃
- java - 文件上传下载传输状态为FAILED时如何知道错误/异常
- ios - Xcode 使用哪些 URL 与 Apple 的服务器通信
- reactjs - 我想在反应中缓存图像,我应该使用什么来存储
- python - Django 详细视图测试模型在 django 测试中给出 AssertionError: 404 != 200,但在浏览器中工作正常
- html - HTML 文本对齐问题