当我使用以下内容上传文件到onedrive时:
HTTP POST https://apiis.live.net/v5.0/{foldid}/files?access_token={ACCESS_TOKEN} Content-Type: multipart/form-data; boundary={boundary} --{boundary} Content-Disposition: form-data; name="file"; filename="{filename}" Content-Type: application/octet-stream {File content goes here} --{boundary}
我遵循https://msdn.microsoft.com/en-us/library/office/dn659726.aspx
的指南它总是给我错误“java.lang.Exception:HTTP 400. Bad Request”。 是一个驱动团队或任何人帮忙给我建议它出了什么问题?
谢谢和最诚挚的问候, 罗纳德
答案 0 :(得分:1)
您的请求似乎格式不正确。
我不知道一个驱动器是如何工作的,但在对链接进行快速概述后,您是否尝试删除了HTTP' HTTP'之前' POST'标题?
或者您的文件内容是否正确发送?
答案 1 :(得分:1)
在网址https://apis.live.net/v5.0/{folderid}/files?access_token={ACCESS_TOKEN}
中,这表示您使用的是已弃用的LiveConnect API。我建议使用位于https://api.onedrive.com的受支持API和此处描述的上传方法https://dev.onedrive.com/items/upload_put.htm,其中请求不需要多部分mime架构
PUT .../drive/root:/{parent-path}/{filename}:/content
Content-Type: text/plain
The contents of the file goes here.
在https://dev.onedrive.com获取有关这些API的更多信息如果更新的上传方法仍然会给您带来麻烦,请确保包含完整的HTTP响应标头和正文。