Я не публикую здесь никакого кода, но недавно мне удалось успешно возобновить загрузку из Google Cloud Storage с использованием заголовка Range
.
Предположим, у меня есть 570-байтовый текстовый файл, который начинается с:
The next morning Hanna distracts Dieter
Если я отправлю заголовок Range
со значением bytes=0-21
, я получу обратно The next morning Hanna
.
Если я отправлю заголовок Range
со значением bytes=3-32
, я получу обратно next morning Hanna distracts
.
(ПРИМЕЧАНИЕ. В заголовке Range
используется включающий интервал.)
Если размер моего чанка не превышает размер файла, и за исключением какой-либо сетевой ошибки, я всегда должен ожидать, что ответ будет содержать заголовок Content-Range
, указывающий, какой диапазон байтов я только что скачал, а также общий размер файла. Например, ответ на мой первый запрос будет содержать Content-Range: bytes 0-21/570
, поэтому мой следующий запрос будет иметь Range
начало в байте 22, например, bytes=22-43
.