Jak wysłać zapytanie (GET, POST) na stronę WWW?
Wyobraźmy sobie sytuacje, że na serwerze istnieje plik (hxxp://ip_servera/~hador/MD5/index.php) o zawartości...
I teraz chcemy wysłać zapytanie przekazując zawartość przez POST i GET... Jak to zrobić?
I teraz chcemy wysłać zapytanie przekazując zawartość przez POST i GET... Jak to zrobić?
- Utworz nowy projekt (Uruchamiamy C++Buildera)
- Umieszczamy na formatce TClientSocket i TMemo
- Następnie ustawiamy właściwości TClientSocket :
- Port: 80
- Address: ip_servera
- Active: true
- Port: 80
- Następnie należy obsłużyć jego zdarzenia OnConnect i OnRead jak poniżej
void __fastcall TForm1::ClientSocket1Connect(TObject *Sender,
TCustomWinSocket *Socket)
{
AnsiString post = "hash=hador";
AnsiString req = "POST /~hador/MD5/index.php?hash=hador HTTP/1.1\n"
"Host: localhost\n"
"Content-Length: "+IntToStr(post.Length())+"\n"
"Content-Type: application/x-www-form-urlencoded\n"
"\n"
+post+
"";
ShowMessage(req);
Socket->SendText(req);
}
void __fastcall TForm1::ClientSocket1Read(TObject *Sender,
TCustomWinSocket *Socket)
{
Memo1->Lines->Add(Socket->ReceiveText());
dynamic_cast<TClientSocket*>(Sender)->Active = false;
}
TCustomWinSocket *Socket)
{
AnsiString post = "hash=hador";
AnsiString req = "POST /~hador/MD5/index.php?hash=hador HTTP/1.1\n"
"Host: localhost\n"
"Content-Length: "+IntToStr(post.Length())+"\n"
"Content-Type: application/x-www-form-urlencoded\n"
"\n"
+post+
"";
ShowMessage(req);
Socket->SendText(req);
}
void __fastcall TForm1::ClientSocket1Read(TObject *Sender,
TCustomWinSocket *Socket)
{
Memo1->Lines->Add(Socket->ReceiveText());
dynamic_cast<TClientSocket*>(Sender)->Active = false;
}
Autorem tekstu jest:
Wojciech Bojewski
Materiał dodany przez użytkownika: _hador_
