Вниз
Скачать: CL | DM;

Подключение из Delphi к Web-серверу по протоколу HTTP.   Найти похожие ветки 

← →
serg222 ©   (2003-03-20 17:30) [0]

Имеется Web-сервер.
Я из Delphi подсоединяюсь к Web-серверу.
Использую стандартный компонент TClientSocket.
И посылаю на Web-сервер запрос в соответствии с протоколом HTTP.
GET http://www.SiteName.ru:80/ HTTP/1.0
В ответ Web-сервер шлет мне ответ
HTTP/1.1 200 OK
Server: Microsoft-IIS/5.0
Date: Thu, 20 Mar 2003 11:52:02 GMT
Content-type: text/html
X-Powered-By: PHP/4.2.3

Bodi Bodi Bodi Bodi Bodi Bodi
Bodi Bodi Bodi Bodi Bodi Bodi
Bodi Bodi Bodi Bodi Bodi Bodi

Данные в Delphi я считываю на событии TClientSocket.OnRead.
И добавляю их в глобальную переменную при каждом вызове этого события.
Если объем передаваемых данных большой, то это событие происходит несколько раз.
Вопрос.
Как при очередном вызове события TClientSocket.OnRead мне проверить, что приняты все данные или же еще нет?


← →
Palladin ©   (2003-03-20 17:54) [1]

OnDisconnect


← →
serg222 ©   (2003-03-20 18:19) [2]

Большое спасибо


← →
Paul-M ©   (2003-03-28 18:21) [3]

2 Palladin
Не обязательно. Если в тексте запроса стоит параметр
Connection: Keep-Alive, то сервер не закрывает соединение после выполнения запроса согласно RFC. Соединение может быть разорвано только после параметра запроса Connection: Close.
Это спецификация НТТР 1.1, другие не читал.
Это сделано для:
1. Получение изображений
2. Получения фреймов, скриптов в отдельных файлах и т.п.

Если получаешь HTML то логичто предположить что после тэга </BODY>
А еще проще - читай спецификацию протокола НТТР - там все есть )))


← →
Wonder ©   (2003-03-28 18:32) [4]

Hypertext Transfer Protocol -- HTTP/1.1

...

14.14 Content-Length

The Content-Length entity-header field indicates the size of the message-body, in decimal number of octets, sent to the recipient or, in the case of the HEAD method, the size of the entity-body that would have been sent had the request been a GET.
...
Applications SHOULD use this field to indicate the size of the message-body to be transferred, regardless of the media type of the entity.
...



← →
Paul-M ©   (2003-03-28 18:42) [5]

2 Wonder
Ага! Вот про это я и говорил, только RFC № кактотам под рукой нету


← →
Wonder ©   (2003-03-28 18:47) [6]

RFC 2068



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.012 c
1-83608
_Igorek
2003-05-14 18:05
2003.05.26
Ошибка при вставке собственного компонента из буфера обмена


11-83424
Sam Stone
2002-08-18 09:21
2003.05.26
FindComponent :(


7-83781
Ик сик
2003-03-25 15:33
2003.05.26
Можно ли читать данные из сом-порта, открытого другой программой?


7-83769
_sMile
2003-03-24 11:31
2003.05.26
Как убить приложение?


14-83730
iNew
2003-05-07 10:53
2003.05.26
Кто какими пользуется антивирусами для win2k adv server?




   Наверх