Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Работа с сетью в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 19.05.2012, 16:35   #1
knopkodaf
 
Регистрация: 19.05.2012
Сообщений: 7
По умолчанию Вопрос по работе с IdTCPClient

Здравствуйте всем, подскажите как с помощью IdTCPClient считать ответ сервера (HTML страницу целиком с хедерами). В сети полно примеров приема одной строчки с помощью readLn, а вот чтобы целиком не нашел.
Пробовал:
* методом AllData но если серв после ответа не закрывает соединение то всё зависает до таймаута- негодится.
*CurrentReadBuffer- возвращает первые несколько строк, попытка вызывать метод в цикле провалилась т.к. нет возможности узнать закончились ли данные или придут еще!
использую Delphi7, изломался уже с этим делом, помогите!!!

Последний раз редактировалось knopkodaf; 19.05.2012 в 19:37.
knopkodaf вне форума Ответить с цитированием
Старый 23.05.2012, 21:30   #2
knopkodaf
 
Регистрация: 19.05.2012
Сообщений: 7
По умолчанию :(

неужели ни кто не сталкивался с этим ?
помогите знатоки, две недели не могу эту проблему решить, или может литературу подскажите по теме ???
пробовал посмотреть как это реализовано в классе IdHTTP но не хватило навыков, запутался в дебрях.

Последний раз редактировалось knopkodaf; 23.05.2012 в 21:33.
knopkodaf вне форума Ответить с цитированием
Старый 23.05.2012, 21:33   #3
Valio
Сливочное масло
Участник клуба
 
Аватар для Valio
 
Регистрация: 01.01.2011
Сообщений: 1,149
По умолчанию

Непонял что ты собрался туда передавать? Кучку строк?
Сливочное масло Valio - компиляция как по маслу
Valio вне форума Ответить с цитированием
Старый 23.05.2012, 21:38   #4
knopkodaf
 
Регистрация: 19.05.2012
Сообщений: 7
По умолчанию

Цитата:
Сообщение от Valio Посмотреть сообщение
Непонял что ты собрался туда передавать? Кучку строк?
нет нет, наверно плохо описал ситуацию.
Я соединяюсь с обычным HTTP сервером и запрашиваю HTMLевскую страницу(да, кучка строк), а вот принять её целиком незнаю каким методом
knopkodaf вне форума Ответить с цитированием
Старый 28.05.2012, 19:54   #5
knopkodaf
 
Регистрация: 19.05.2012
Сообщений: 7
По умолчанию

Что, неужели ни кто не работал с IDTCPClient ?? чем же тогда народ пользуется ????
knopkodaf вне форума Ответить с цитированием
Старый 28.05.2012, 20:07   #6
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

методом readln читаем строки до обнаружения пустой строки, что отделяет хидеры от данных.
разбираем хидер, читаем Content-Length, теперь мы знаем сколько данных нужно принять.

у вас проблема больше с самим протоколом.
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.

Последний раз редактировалось Пепел Феникса; 28.05.2012 в 20:14.
Пепел Феникса вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
IdTCPClient+FileListBox hysek Работа с сетью в Delphi 9 09.05.2012 02:00
Работа с IdTCPServer и IdTCPClient rule-z Работа с сетью в Delphi 4 19.08.2011 07:58
Ошибка IdTcpClient sanek99 Работа с сетью в Delphi 1 13.02.2011 17:19
IdTcpClient и idTcpServer xTANATOSx Работа с сетью в Delphi 9 17.05.2008 23:11
Реакция IdTCPClient OrdJONY Работа с сетью в Delphi 3 30.08.2007 10:16