Показать сообщение отдельно

  #1  
Старый 25.02.2009, 21:42
ZET36
Участник форума
Регистрация: 08.10.2007
Сообщений: 259
С нами: 9785147

Репутация: 137
По умолчанию

Nightmarе а чем сокеты не нравятся?

запрос
Код:
POST http://fanera.6te.net/fileupload/gate2.php HTTP/1.0
User-Agent: Opera/9.10 (Windows NT 5.1; U; ru)
Host: fanera.6te.net
Accept: text/html, application/xml;q=0.9, application/xhtml+xml, image/png, image/jpeg, image/gif, image/x-xbitmap, */*;q=0.1
Accept-Language: ru-RU,ru;q=0.9,en;q=0.8
Accept-Charset: iso-8859-1, utf-8, utf-16, *;q=0.1
Accept-Encoding: deflate, gzip, x-gzip, identity, *;q=0
Proxy-Connection: close
Content-Length: 12
Content-Type: application/x-www-form-urlencoded

file=erewrew

код
Код:
procedure TForm1.Button1Click(Sender: TObject);
var Site : PChar;
   sock : TSocket;
   HostEnt : PHostEnt;
   WSA : TWSAData;
   addr : sockaddr_in;
   sendbuff : String;
   PostData : String;


   otvet:array [1..6000] of char;
begin
//Создаём сокет
if WSAStartup($0101, WSA) <> 0 then
Exit;
sock := Socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
FillChar(addr, SizeOf(sockaddr_in), 0);
addr.sin_family := AF_INET;
addr.sin_port := htons(80); //порт
Site := 'fanera.6te.net';              //хост к которому конектится сокет
HostEnt := gethostbyname(Site);
addr.sin_addr.s_addr := Longint(PLongint(HostEnt^.h_addr_list^)^);

Connect(sock, addr, SizeOf(addr)); //коннектимся к сокету
//Формируем запрос
       PostData := '';
       PostData := 'file=ваываыв';   //переменные запроса
       sendbuff := '';
       sendbuff := 'POST http://fanera.6te.net/fileupload/gate2.php HTTP/1.0' + #13#10 +
                   'User-Agent: Opera/9.10 (Windows NT 5.1; U; ru)' + #13#10 +
                   'Host: fanera.6te.net' + #13#10 +
                   'Accept: text/html, application/xml;q=0.9, application/xhtml+xml, image/png, image/jpeg, image/gif, image/x-xbitmap, */*;q=0.1' + #13#10 +
                   'Accept-Language: ru-RU,ru;q=0.9,en;q=0.8' + #13#10 +
                   'Accept-Charset: iso-8859-1, utf-8, utf-16, *;q=0.1' + #13#10 +
                   'Accept-Encoding: deflate, gzip, x-gzip, identity, *;q=0' + #13#10 +
                   'Proxy-Connection: close' + #13#10 +
                   'Content-Length: ' + IntToStr(Length(PostData)) + #13#10 +
                   'Content-Type: application/x-www-form-urlencoded'+ #13#10#13#10 + PostData;

       send(sock, sendbuff [1], Length(sendbuff), 0);    //отправляем сокету запрос
        recv(sock,otvet,5000,0);    //читаем ответ
        Memo1.Text:=otvet; //заносим ответ в memo
       CloseSocket(sock);
     end;
 
Ответить с цитированием