0

https://github.com/microsoftgraph/microsoft-graph-docs/issues/2624

我遇到了上述问题。

我正在尝试通过调用https://graph.microsoft.com/v1.0/users/ {userId}/onenote/pages/{pageId}/content?preAuthenticated=来保存引用图像的页面内容真的

Per this -下载一个带有 HTML 图像内容的笔记页面

通过在您进行提取时附加“?preAuthenticated=true”,它将使图像公开。

但是当我尝试渲染 html 时,它给了我“加载资源失败:服务器响应状态为 401(未授权)”。

4

3 回答 3

0

https://github.com/microsoftgraph/microsoft-graph-docs/pull/4339/files

我认为他们取消了对它的支持。

于 2020-03-23T16:08:32.623 回答
0

有点离题,但我想出了如何让图像渲染。

https://docs.microsoft.com/en-us/graph/api/resource-get?view=graph-rest-1.0&tabs=http

当您调用 /onenote/pages/{id}/content 时,图像会引用这样的源

src="https://graph.microsoft.com/v1.0/users({userId})/onenote/resources/{resourceId}/$value" 以及 data-src-type="image/jpeg"

向该端点发出 get 请求,您将获得图像二进制文件,将二进制文件转换为 base64,然后通过将 src 替换为 base64 来呈现 html。

于 2020-03-25T16:31:02.903 回答
0

看来官方文档有问题:Get OneNote content and structure with Microsoft Graph

我们可以看到服务根 URL 是https://graph.microsoft.com/{version}/{location}/onenote/.

但在此页面上的任何示例中,URL 仍然是https://www.onenote.com/api/v1.0/me/notes.

目前,当您添加时,?preAuthenticated=true您将在此页面上获得这样一个图像的 URL:

https://graph.microsoft.com/v1.0/users('{userID}')/onenote/resources/{resourceID}/content?publicAuth=true&mimeType=image/png

但是当你尝试在浏览器中访问它时,你会得到401 error Access token is empty.

一种解决方法是将 URL 修改为:

https://www.onenote.com/api/v1.0/resources/{resourceID}/content?publicAuth=true&mimeType=image/png

然后你会得到图像。

于 2020-03-23T06:01:11.967 回答