我尝试使用Grpah API下载文件。
使用API浏览器测试, https://graph.microsoft.io/en-us/graph-explorer#
执行以下请求,获取文件/文件夹项目信息列表
https://graph.microsoft.com/v1.0/me/drive/root/children
对于其中一个文件项,我能够获取项目信息。
https://graph.microsoft.com/beta/me/drive/items/_an_item_id
但是以下返回HTTP 404。
https://graph.microsoft.com/beta/me/drive/items/_an_item_id/content
这种症状的原因是什么?
答案 0 :(得分:1)
不支持通过Graph Explorer向private Handler Download_taskHandler = new Handler();
Download_taskHandler.postDelayed(Download_task, 0);
端点执行请求。
通过Grath Explorer发送到https://graph.microsoft.com/beta/me/drive/items/<itemid>/content
端点的请求以preflight request发布。服务器以https://graph.microsoft.com/beta/me/drive/items/<itemid>/content
回复,但由于CORS behavior,不允许重定向到预检请求。
以下是有关如何下载文件的解决方法
以下驱动器项资源请求:
302-Redirect
返回https://graph.microsoft.com/beta/me/drive/items/<itemId>
注释,其中包含文件资源的实际链接。
检索到驱动器项资源后,执行另一个来自@microsoft.graph.downloadUrl
的URL的GET请求以返回实际文件。