использую synapse как замену инди.
ребята кто пользовался им пожскажите как там по ХТТП получить не весь файл, а только произволный кусок или хотя бы начальный кусок в Н байт.
чтобы например полчуить заголовок странички и не грузит тела(не тратить лишний траффик)...
заранее спасибо!
"nextray" <78801@users.rsdn.ru> wrote in message
news:3203067@news.rsdn.ru...
> использую synapse как замену инди.
> ребята кто пользовался им пожскажите как там по ХТТП получить не весь файл, а только произволный кусок или хотя бы начальный кусок в Н байт.
> чтобы например полчуить заголовок странички и не грузит тела(не тратить лишний траффик)...
> заранее спасибо!
Чтобы получить только голову страницы надо слать HEAD вместо GET, а для части файла слать заголовок Range.
Posted via RSDN NNTP Server 2.1 beta
Здравствуйте, wellwell, Вы писали:
W>"nextray" <78801@users.rsdn.ru> wrote in message news:3203067@news.rsdn.ru...
>> использую synapse как замену инди.
>> ребята кто пользовался им пожскажите как там по ХТТП получить не весь файл, а только произволный кусок или хотя бы начальный кусок в Н байт.
>> чтобы например полчуить заголовок странички и не грузит тела(не тратить лишний траффик)...
>> заранее спасибо!
W>Чтобы получить только голову страницы надо слать HEAD вместо GET, а для части файла слать заголовок Range.
Извините чуть чуть подробнее можно?
почему то у меня HTTP.HTTPMethod('Get', '
www.yandex.ru') возвращает всю страничку
а HTTP.HTTPMethod('Head', '
www.yandex.ru') возвращает пусто.
а с Range воообще не понял как отослать запрос. такого идентификатора в HTTPMethod даже не нашел....
Здравствуйте, nextray, Вы писали:
N>Извините чуть чуть подробнее можно?
N>почему то у меня HTTP.HTTPMethod('Get', 'www.yandex.ru') возвращает всю страничку
N>а HTTP.HTTPMethod('Head', 'www.yandex.ru') возвращает пусто.
N>а с Range воообще не понял как отослать запрос. такого идентификатора в HTTPMethod даже не нашел....
Заглянул в исходник юнита и вижу следующее:
published
{:If you need download only part of requested document, here specify
possition of subpart begin. If here 0, then is requested full document.}
property RangeStart: integer read FRangeStart Write FRangeStart;
{:If you need download only part of requested document, here specify
possition of subpart end. If here 0, then is requested document from
rangeStart to end of document. (for broken download restoration,
for example.)}
property RangeEnd: integer read FRangeEnd Write FRangeEnd;
Следовательно:
HTTP.RangeStart := 100;
HTTP.RangeStart := 200;
HTTP.HTTPMethod('Get', 'www.yandex.ru');
Здравствуйте, dkameleon, Вы писали:
D>Здравствуйте, nextray, Вы писали:
...
D>Следовательно:
D>D>HTTP.RangeStart := 100;
D>HTTP.RangeStart := 200;
D>HTTP.HTTPMethod('Get', 'www.yandex.ru');
D>
да в том то и дело что все равно получаю весь документ
"nextray" <78801@users.rsdn.ru> wrote in message
news:3203556@news.rsdn.ru...
> да в том то и дело что все равно получаю весь документ
А сервер и не обязан отдавать его часть. Если он отдает часть, получишь ответ 206 Partial content, причем это как правильно только для статики и файлов. А для динамических страниц он может игнорировать вопрос и отдавать 200 OK.
Posted via RSDN NNTP Server 2.1 beta