gpt4 book ai didi

java - OneDrive API 部分下载

转载 作者:行者123 更新时间:2023-12-02 04:40:52 28 4
gpt4 key购买 nike

我目前正在尝试开发一个基于 Java 的应用程序来访问 OneDrive。

今天我尝试按照此处所述实现下载:https://dev.onedrive.com/items/download.htm

我想使用range参数,为用户提供暂停大量下载的功能。但无论我如何在 HTTP 请求 header 中或在 URL 中作为 GET 参数发送参数,它总是会向我发送完整的文件。

到目前为止我尝试过的事情:

  1. https:/ /api.onedrive.com/v1.0/drive/items/***/content?range=0-8388607

(通过 HTTP header 进行 OAuth)

  • https:/ /api.onedrive.com/v1.0/drive/items/***/content:

    header :授权:***

    范围:0-8388607

  • https:/ /api.onedrive.com/v1.0/drive/items/***/content:

    header :授权:***

    范围:字节=0-8388607

  • 我还尝试了 Content-Range 以及小写和大写的各种变体,但没有成功。任何原因为什么这不起作用?

    附注:

    链接已损坏,因为我使用的新帐户仅允许每个帖子有 2 个链接,我知道我的帖子中//两个链接之间有一个空格;)

    最佳答案

    支持请求文件的范围。您可能需要使用 fiddler 或其他一些工具来查看执行 302 重定向后是否传递原始 header 。下面是当我提供 302 重定向发生后传递的范围 header 时的 HTTP 请求和响应。您会注意到返回了 HTTP 206 部分内容响应。此外,要恢复下载,您可以使用“Range: bytes=1025-”或任何最后收到的字节。我希望这会有所帮助。

    获取 https://api.onedrive.com/v1.0/drive/items/item-id/content HTTP/1.1
    授权:持票人
    范围:字节=0-1024
    主机: api.onedrive.com

    HTTP/1.1 302 已找到
    内容长度:0
    位置:https://kplnyq.dm2302.livefilestore.com/edited_location
    删除了其他 header

    获取 https://kplnyq.dm2302.livefilestore.com/edited_location
    范围:字节=0-1024
    主机:kplnyq.dm2302.livefilestore.com

    HTTP/1.1 206 部分内容
    缓存控制:公共(public)
    内容长度:1025
    内容类型:音频/mpeg
    内容位置:https://kplnyq.dm2302.livefilestore.com/edited_location
    内容范围:字节0-1024/4842585
    到期时间:2015 年 8 月 11 日星期二 21:34:52 GMT
    最后修改时间:2011 年 12 月 12 日星期一 21:33:41 GMT
    接受范围:字节
    服务器:微软-HTTPAPI/2.0
    其他 header 已删除

    关于java - OneDrive API 部分下载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30223684/

    28 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com