Докачка файлов
От: MrOrbit Россия  
Дата: 07.12.05 09:20
Оценка:
Подскажите как организовать правильную скачку больших файлов.

Когда я их отдаю по Response.Write.

Как реализовать докачку таких файлов.
Может есть уже реализованный пример у кого?
Re: Докачка файлов
От: valmond Россия http://blogs.technet.com/valmond/
Дата: 07.12.05 12:21
Оценка: 64 (2)
MO>Как реализовать докачку таких файлов.
MO>Может есть уже реализованный пример у кого?

Ключевая фраза "Partial Content"

Глянь здесь пример

выдержка на VB
...
HttpContext.Current.Response.StatusCode=206
HttpContext.Current.Response.StatusDescription="Partial
Content"
HttpContext.Current.Response.AppendHeader("Content-Range",
"bytes " & StartPos &"-"& EndPos & "/" & FileSize)
...
HttpContext.Current.Response.WriteFile(FilePath, StartPos,
EndPos)
...
Заметки — SharePoint & InfoPath
http://blogs.technet.com/valmond/
Re: Докачка файлов
От: Sinclair Россия https://github.com/evilguest/
Дата: 07.12.05 12:28
Оценка: 23 (3)
Здравствуйте, MrOrbit, Вы писали:

MO>Подскажите как организовать правильную скачку больших файлов.


MO>Когда я их отдаю по Response.Write.

Тебе нужно смотреть в хидеры Request насчет Range.
См. http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35.2
Увидев хидер вида
Range:bytes=500-550

ты
1. Выставляешь Response.StatusCode = 206
2. Выставляешь в Response хидер Content-Range: 500-550/5400
(предполагаю, что полная длина файла — 5400)
3. Пишешь в Response.Write() не все байты файла, а только с 500 по 550 включительно. Т.е. если тебе приехало 0-0, то передаешь 1 первый байт.

MO>Как реализовать докачку таких файлов.

MO>Может есть уже реализованный пример у кого?
1.1.4 stable rev. 510
Уйдемте отсюда, Румата! У вас слишком богатые погреба.
Re[2]: Докачка файлов
От: MrOrbit Россия  
Дата: 08.12.05 05:15
Оценка:
Спасибо большое парни, вы мне очень помогли
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.