pre*_*elb 2 sharepoint microsoft-graph-api
我正在尝试使用 Graph API 从表单库下载 XML 文件,但它不起作用。我在这里引用文档,我认为它告诉我正确的语法是GET /sites/{siteId}/drive/items/{item-id}/content。但是,当我使用 Graph Explorer 使用该语法时,它会显示 404 File Not Found。接下来,我尝试了该语法GET /drives/{drive-id}/items/{item-id}/content,该语法返回状态代码 0,但消息正文仅显示 {"isTrusted": true}。我应该注意,如果我删除 URL 上的最后一个参数并使用GET /drives/{drive-id}/items/{item-id}它的语法,确实会带回有关文件的信息。
语法有问题吗?这也许不是您可以对表单库中的 XML 文件执行的操作吗?这可能是 Graph Explorer 的限制吗?
当您点击/drives/{drive-id}/items/{item-id}/content终结点时,Microsoft Graph 将响应 302 重定向,但浏览器由于 CORS 策略而拒绝该重定向。
以下是在 JavaScript 应用程序中下载 OneDrive 文件部分的说明:
要在 JavaScript 应用程序中从 OneDrive 下载文件,您不能使用 /content API,因为它会响应 302 重定向。当需要 CORS 预检时(例如提供授权标头时),明确禁止 302 重定向。
相反,您的应用需要选择 @microsoft.graph.downloadUrl 属性,该属性返回 /content 将重定向到的相同 URL。然后可以使用 XMLHttpRequest 直接请求该 URL。由于这些 URL 已预先进行身份验证,因此无需 CORS 预检请求即可检索它们。
要在 Graph Explorer 中下载文件,请首先发出包含以下@microsoft.graph.downloadUrl属性的请求:
GET /drive/items/{item-id}?select=@microsoft.graph.downloadUrl
Run Code Online (Sandbox Code Playgroud)
然后可以通过标记@microsoft.graph.downloadUrl属性中提供的 Url 的另一个请求来下载文件
| 归档时间: |
|
| 查看次数: |
3565 次 |
| 最近记录: |