如何使用 OneDrive REST API 将文件上传到 OneDrive?
How to upload a file to OneDrive using OneDrive REST API?
请允许我解释一下我在做什么以及如何我在做什么。
我在做什么?
我正在尝试使用其 REST 将文件上传到 Onedrive API
资料来源:one drive api documentation
我正在使用 OneDrive 片段方法来执行此操作,因为文件可以大到 5gb 或小到 1kb(取决于用户)
目前,我正在使用 POST-MAN Chrome 扩展来调用 APIes
我最近怎么样?
- 生成的访问令牌
- 已创建 Session 并收到上传 url
- 正在使用 PUT 请求上传文件,如下所示
已选择我要上传的文件(文件大小:729676295字节)
添加了headers并发送了请求并发送了请求
这是结果
它说最大片段大小是 67108864 字节所以我改变了
的值
content-length : 67108864 和
content-range:字节 0-67108863/729676295
但随后我收到此错误消息:声明的片段长度与提供的字节数不匹配
请帮我弄清楚我应该在 content-length 和 content-range 中传递什么。
非常感谢您的关注。
终于感谢大神,折腾了2天终于找到问题所在了
有几点需要注意
- 您必须将文件分成相等的部分并将其保存在某个地方,然后将每个文件分别上传到创建会话后获得的相同 URL。
- Content-Length必须是所有片段上传请求中您正在上传的文件的总字节数。
- Content-Range 将类似于:0-{fragmentLength-1}/{totalNumberOfBytesOfFile}(与 content-length) 从下一个片段开始,Content-Range 将是 {uploadedBytes}-{uploadedBytes+nextSetOfBytes-1}/{totalNumberOfBytesOfFile}
注意:下一组字节应与前一组一样长。不要担心,因为最后一个片段可能不同。
P.S: 不要使用成功上传片段后您将收到的内容范围。
{totalNumberOfBytesOfFile}
与 content-length
不同;
Content-Length
是当前片段的字节。
图片是上传 4917 字节文件的示例。
请允许我解释一下我在做什么以及如何我在做什么。
我在做什么?
我正在尝试使用其 REST 将文件上传到 Onedrive API 资料来源:one drive api documentation
我正在使用 OneDrive 片段方法来执行此操作,因为文件可以大到 5gb 或小到 1kb(取决于用户)
目前,我正在使用 POST-MAN Chrome 扩展来调用 APIes
我最近怎么样?
- 生成的访问令牌
- 已创建 Session 并收到上传 url
- 正在使用 PUT 请求上传文件,如下所示
已选择我要上传的文件(文件大小:729676295字节)
添加了headers并发送了请求并发送了请求
它说最大片段大小是 67108864 字节所以我改变了
的值content-length : 67108864 和 content-range:字节 0-67108863/729676295
但随后我收到此错误消息:声明的片段长度与提供的字节数不匹配
请帮我弄清楚我应该在 content-length 和 content-range 中传递什么。
非常感谢您的关注。
终于感谢大神,折腾了2天终于找到问题所在了
有几点需要注意
- 您必须将文件分成相等的部分并将其保存在某个地方,然后将每个文件分别上传到创建会话后获得的相同 URL。
- Content-Length必须是所有片段上传请求中您正在上传的文件的总字节数。
- Content-Range 将类似于:0-{fragmentLength-1}/{totalNumberOfBytesOfFile}(与 content-length) 从下一个片段开始,Content-Range 将是 {uploadedBytes}-{uploadedBytes+nextSetOfBytes-1}/{totalNumberOfBytesOfFile}
注意:下一组字节应与前一组一样长。不要担心,因为最后一个片段可能不同。
P.S: 不要使用成功上传片段后您将收到的内容范围。
{totalNumberOfBytesOfFile}
与 content-length
不同;
Content-Length
是当前片段的字节。
图片是上传 4917 字节文件的示例。