抓包数据:
POST /login.aspx HTTP/1.1
Accept: image/jpeg, application/x-ms-application, image/gif, application/xaml+xml, image/pjpeg, application/x-ms-xbap, application/x-shockwave-flash, application/vnd.ms-excel, application/msword, */*
Referer: http://www.cnlinfo.net/login.aspx
Accept-Language: zh-CN
User-Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; EmbeddedWB 14.52 from: http://www.bsalsa.com/ EmbeddedWB 14.52; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; Tablet PC 2.0)
Content-Type: application/x-www-form-urlencoded
Accept-Encoding: gzip, deflate
Host: www.cnlinfo.net
Content-Length: 229
Connection: Keep-Alive
Cache-Control: no-cache
Cookie: Hm_lvt_8803f7fa56465a59d0c1a12ec666f533=1368799256,1368803521,1369021257,1369038720; Hm_lpvt_8803f7fa56465a59d0c1a12ec666f533=1369038720; bdshare_firstime=1367801140475; ASP.NET_SessionId=4nckfv55dmys20452gi2jvrm
__VIEWSTATE=%2FwEPDwUJODI5MjcyNzM1D2QWAgIDD2QWAgIFDw8WAh4EVGV4dAUFOCsxMz1kZBgBBR5fX0NvbnRyb2xzUmVxdWlyZVBvc3RCYWNrS2V5X18WAQUHSW1nX0J0bv77TZpONe7QCO7Gu0iZqLY%2BmnKw&tbx_Name=test&tbx_pwd=test&Txt_code=21&Img_Btn.x=86&Img_Btn.y=10
代码:
procedure TForm1.SB_DLClick(Sender: TObject);
var
  url:string;
  Param:TStringList;
  RStream:TStringStream;
begin
  url:='http://www.cnlinfo.net/login.aspx';
  idpost.Request.Referer:='http://www.cnlinfo.net/login.aspx';
  idpost.Request.Host:='www.cnlinfo.net';
  IDpost.Request.SetHeaders;
  IDpost.Request.RawHeaders.Clear;
  IDpost.HandleRedirects := true;
  IDpost.HTTPOptions := IDpost.HTTPOptions + [hoKeepOrigProtocol];
  IDpost.ProtocolVersion := pv1_1;
  IDpost.Request.Accept := '*/*';
  IDpost.Request.AcceptLanguage := 'zh-cn';
  IDpost.Request.UserAgent := 'Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; EmbeddedWB 14.52 from: http://www.bsalsa.com/ EmbeddedWB 14.52; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; Tablet PC 2.0)';
  IDpost.Request.Connection := 'Keep-Alive';
  IDpost.Request.CacheControl := 'no-cache';
  IDpost.Request.ContentType := 'application/x-www-form-urlencoded';
  //idpost.Request.ContentType:='multipart/form-data';
  param:=TStringList.Create;
  Rstream:=TStringStream.Create('');
  param.Add('__VIEWSTATE='+chstrid+'');//验证字符串存于页面name="__VIEWSTATE",启动时GET网页提取并赋值给CHSTRID
  param.Add('tbx_Name=go2013');
  param.Add('tbx_pwd=go2013');
  param.Add('Txt_code='+Edit3.Text+'');//验证码
  param.Add('Img_Btn.x=64');
  param.Add('Img_Btn.y=23');
  idpost.post(url,param,Rstream);
  memo1.Text:=utf8toansi(Rstream.DataString);
  Rstream.Free;
end;错误信息:环境D7+WIN7

解决方案 »

  1.   


    //先加个全局变量
    urlRedirect: string
    //----------------
      Param.Add('tbx_Name=go2013');
      Param.Add('tbx_pwd=go2013');
      Param.Add('Txt_code=' + Edit1.Text + ''); // 验证码
      Param.Add('Img_Btn.x=64');
      Param.Add('Img_Btn.y=23');
      try
        Http.post(URL, Param, RStream);
        Memo1.Text := RStream.DataString;
      except
      end;
      Memo1.Text := Http.Get(urlRedirect);
      RStream.Free;
      Param.Free;
    end;procedure TForm1.HttpRedirect(Sender: TObject; var dest: string;
      var NumRedirect: Integer; var Handled: Boolean; var VMethod: string);
    begin
      Memo2.Lines.Add(Format('dest=%s, NumRedir=%d, VMethod=%s', [dest, NumRedirect, VMethod]));
      if Pos('http://fa1.cnlinfo.net/vip/url.aspx', dest) > 0 then
        urlRedirect := dest;
    end;
      

  2.   

    我写的例子,给你QQ发离线文件了。
    请注意查收。
    good lucky