【发布时间】:2016-08-30 07:08:18
【问题描述】:
我目前正在使用 xlsx NodeJS 库在我的文件系统上生成一个文件,我还使用 create item 端点 (https://graph.microsoft.io/en-us/docs/api-reference/beta/api/item_post_children) 在 OneDrive 上创建了一个空文件
现在,我想用我在文件系统上的文件内容上传 OneDrive 上的文件内容。我正在尝试使用 Upload Item 端点 (https://graph.microsoft.io/en-us/docs/api-reference/beta/api/item_uploadcontent) 执行此操作,并且请求通过正常,但是当我尝试使用 Excel Online 打开文件时,我收到文件已损坏的消息
无论如何,如果我通过 OneDrive 网络界面上传文件,一切正常
知道为什么内容上传不起作用吗?
【问题讨论】:
-
嗨,Miloš,您能否使用 Fiddler 或类似工具捕获您的 HTTP 请求,并查看发送的内容是否符合您的预期?我的猜测是您的上传代码可能以某种编码格式发送它,并且服务器在存储它之前没有对其进行解码。此外,我们建议您在上传内容之前避免创建空文件。只需一次性上传内容。这样,如果您的上传出现问题,您就不会被困在可能让用户感到困惑的空文件中。
-
你是如何加载你的 xlsx 文件的?显然,使用 OneDriveSDK 对我有用。如果您使用 WebClient 之类的工具来加载文件,则需要注意格式,正如 daspek 指出的那样。
-
嗨@daspek,谢谢你的回答,我认为这是一个问题,但我有匹配编码格式的问题,我发现的最后一件事是应该是base64编码的字符串,我有累了,但不工作你知道也许哪种格式有效吗?文档对此只字未提。
标签: node.js office365 microsoft-graph-api