deadblue / elevengo

An API client of 115 Cloud Storage Service in Go.
MIT License
88 stars 27 forks source link

128K Sha1 Ticket suppot #12

Closed user1121114685 closed 2 years ago

user1121114685 commented 2 years ago

just use DownloadCreateSha1Ticket get a 128k file.

down this file get 128K sha1

deadblue commented 2 years ago

要下载前 128K 数据的话,"Range"请求头应该在请求下载地址(即 DownloadTicket.Url)时设置,而不是在请求获取下载地址的 API 时设置。

我会在 Agent 上添加一个 API 方法 GetRange 来实现这个需求。 另外,也会再增加一个 API 方法 ImportCreateTicket,直接为云端文件生成对应的 ImportTicket

user1121114685 commented 2 years ago

你昨晚一句话点醒了我,User-Agent 是参数的一部分,正常情况下确实可以在下载的时候使用Range,但是115这里不行。即使下载的时候添加了Range 115服务器一样发送的是全量数据。如果要使用前128K 数据必须 在请求的时候蒋 Range作为参数的一部分。

deadblue commented 2 years ago

经实测,只需要在请求下载 URL 时设置 Range 即可:

image

Wireshark 的流量日志亦可佐证这一点:

wireshark