Advertisement
Guest User

Untitled

a guest
Sep 23rd, 2017
107
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.78 KB | None | 0 0
  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14.  
  15. function send(method,zap,cooc,params,ref,mime,proxyTYPE,proxy,port,proxyUSER,proxyPASS:string;headerS:array of string):string;
  16. var Header : TStringList;
  17. Contents : TStringList;
  18. httpsend: THTTPSend;
  19. ss: TStringStream;
  20. i,err:integer;
  21.  
  22. rev:string;
  23. begin
  24. Header := TStringList.Create;
  25. Contents := TStringList.Create;
  26. ss := TStringStream.Create('');
  27. httpsend:=THTTPSend.Create;
  28. HTTPsend.UserAgent:='Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/534.3 (KHTML, like Gecko) Chrome/6.0.472.63 Safari/534.3';
  29. httpsend.Headers.Insert(0,'Referer: '+ref);//referer
  30. httpsend.Cookies.Text:=cooc; //coocies
  31. httpsend.MimeType:=mime;
  32. for i:=1 to 100 do begin
  33. if trim(headers[i])<>''then
  34. Header.Add(headers[i])
  35. else break;
  36. end;
  37.  
  38. httpsend.Headers.AddStrings(Header); //headers
  39. if proxyTYPE='HTTP' then begin
  40. httpsend.ProxyHost:=proxy;
  41. httpsend.ProxyPort:=port;
  42. end else if proxyTYPE='SOCKS 4' then begin
  43. //HTTPsend.Sock.SocksType:=
  44. HTTPsend.Sock.SocksIP := proxy;
  45. HTTPsend.Sock.SocksPort := PORT;
  46. HTTPsend.Sock.SocksUsername := proxyUSER;
  47. HTTPsend.Sock.SocksPassword := proxyPASS;
  48. //HTTPsend.Sock.SocksOpen;
  49. end else if proxyTYPE='SOCKS 5' then begin
  50. //HTTP.Sock.SocksType := ST_Socks5 ;
  51. HTTPsend.Sock.SocksIP := proxy;
  52. HTTPsend.Sock.SocksPort := PORT;
  53. HTTPsend.Sock.SocksUsername := proxyUSER;
  54. HTTPsend.Sock.SocksPassword := proxyPASS;
  55. //HTTPsend.Sock.SocksOpen;
  56. end;
  57. if method='GET' then begin
  58. try
  59. httpsend.HTTPMethod('GET',zap );
  60. except
  61. //on EidSocketError do
  62. on E : Exception do
  63. result:='exception';
  64. end;
  65. end;
  66. if method='POST' then begin
  67. ss.WriteString(params);
  68. httpsend.Document.LoadFromStream(ss);
  69. httpsend.HTTPMethod('POST',zap);
  70. end;
  71. Contents.LoadFromStream(httpsend.Document);
  72. rev := Contents.Text;
  73. if pos('302',IntToStr(HTTPsend.ResultCode))<>0 then begin
  74. result:='302';
  75. err:=FoundLocationStrNum('change_mail',HTTPsend.Headers);
  76. if err>0 then
  77. result:='logout';
  78. err:=FoundLocationStrNum('changemail',HTTPsend.Headers);
  79. if err>0 then
  80. result:='changemail';
  81. err:=FoundLocationStrNum('hash',HTTPsend.Headers);
  82. if err>0 then
  83. result:=HTTPsend.Headers[FoundLocationStrNum('Location',HTTPsend.Headers)];
  84.  
  85. end else if pos('500',IntToStr(HTTPsend.ResultCode))<>0 then begin
  86. result:='500';
  87. end else if pos('404',IntToStr(HTTPsend.ResultCode))<>0 then begin
  88. result:='404';
  89. end else if pos('400',IntToStr(HTTPsend.ResultCode))<>0 then begin
  90. result:='400';
  91. end else
  92. result:=rev;
  93. httpsend.Free;
  94. header.Free;
  95. contents.Free;
  96. ss.Free;
  97.  
  98. exit;
  99. end;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement