使用OneDrive Rest API分段上传二进制内容

时间:2017-12-20 08:49:53

标签: rest upload postman onedrive multipart

根据API文档here我向邮递员提出如下要求: with the headers part as shown and the body being simple plain text。这很好。

但是当谈到二进制内容(以base64格式编码)时,它会上传文件,但是当我尝试在OneDrive上打开相同内容时,它不会被预览。 Uploading image as multipart data encoded in base 64 format 文件上传成功但无法预览。

我在这里缺少什么?有什么建议吗?

2 个答案:

答案 0 :(得分:1)

使用多部分上传方法时,OneDrive不支持Content-Transfer-Encoding。在这种情况下,我们忽略了标题(这似乎是一个错误),只是将base64编码数据存储在文件流中(不对其进行解码)。

您必须将原始字节作为请求的第二部分上传,而不进行任何内容传输编码,以使其工作。

由于您似乎只是在上传文件而不是尝试设置任何自定义元数据,因此最好使用其他上传方法之一,例如PUT或createUploadSession

答案 1 :(得分:0)

Drive不会将图像存储为以二进制形式存储的base64格式。您可以使用邮递员直接选择图像,并可以使用多部分请求上传为二进制文件

以下是在邮递员中添加blob的链接

How to upload images using postman to azure blob storage