Re[2]: Размер страницы
От: B0BAH  
Дата: 02.07.03 11:17
Оценка:
Здравствуйте, mikkri, Вы писали:

M>Можно послать серверу команду HEAD.

M>Далее проверить полученный заголовок на содержание content-length. Если он там есть, то это размер ответа, который пришел бы по команде GET, если нет, то и ответа нет.

M>Насколько я понял из HTTP/1.1 веб сервер в ответ на запрос HEAD не должен отправлять размер контента, а значит, высока вероятность, что размер контента без отправки команды GET ты не получишь.


M>Есть еще вариант — послать GET, а скачивание прервать сразу же после считывания заголовков. В ответ на GET нормальный сервер тебе точно даст content-length. Вот и узнаешь размер файла.


А можно ли использовать процедуру: procedure Get(AURL: string; const AResponseContent: TStream); overload; (класс TIdHTTP)???
То есть если использовать просто function Get(AURL: string): string; overload; то страница сразу качается, а при вызове процедуры она скачается или нет? Мне вообще не понятно как работает процедура (я по потоки ничего не знаю), но я понял что у потока есть свойство size, может через него получится?
И ещё вопросс как разорвать соединение сразу после получения заголовка если использовалась функция Get?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.