![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Get или Post запросы через сокеты или TWebBrowser [D5, Win95/98, WinXP]
WebSQLNeeder © (2005-10-17 17:38:00)Добрый день.
Где можно посмотреть (кроме встроенных примеров в Делфи) или почитать как получить через Делфи страницу html или отправить запрос на сайт (аналогично как это делает сам браузер).
DiamondShark (2005-10-17 19:07:00) [1]Минимальный рабочий пример:
procedure TForm1.Button1Click(Sender: TObject);
begin
Memo1.Clear;
ClientSocket1.Host := 'www.delphimaster.ru';
ClientSocket1.Port := 80;
ClientSocket1.Active := true;
end;
procedure TForm1.ClientSocket1Write(Sender: TObject;
Socket: TCustomWinSocket);
const
Request: PChar = 'GET /cgi-bin/forum.pl?n=3 HTTP/1.0'#13#10'Host: www.delphimaster.ru'#13#10#13#10;
begin
Socket.SendBuf(Request^, StrLen(Request));
end;
procedure TForm1.ClientSocket1Read(Sender: TObject;
Socket: TCustomWinSocket);
var
Len: integer;
Buf: packed array[byte] of char;
S: string;
begin
Len := Socket.ReceiveBuf(Buf, sizeof(Buf));
while Len > 0 do
begin
SetString(S, Buf, Len);
Memo1.Text := Memo1.Text + S;
Len := Socket.ReceiveBuf(Buf, sizeof(Buf));
end;
end;
Подробности реализации протокола HTTP
RFC 1945, Hypertext Transfer Protocol - HTTP/1.0.
RFC 2068, Hypertext Transfer Protocol - HTTP/1.1.