http://www.brokerforum.com/、
麻烦大神帮我分析一下 这个网址的 模拟登陆  怎么传参  我用firebug监视不到传用户名密码的url串
模拟登陆firebug

解决方案 »

  1.   

    除了url传参,还有表单提交(post)
    请求地址
    https://secure.brokerforum.com/cgi/en/session.access.login
    方式post
    内容
    Session_PageName=Index&Session_LoginId=DTEXS1358017964842&Target_Page=session.redirect&Session_Username=fff&Session_Password=sdsdsd&Session_Remember_Password_Control=true&x=38&y=8
      

  2.   

    Fiddler用这个抓包软后看咯!
    然后就用POST
      

  3.   

    static void Main(string[] args)
    {
    Uri url = new Uri("http://www.brokerforum.com");
    HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);
    HttpWebResponse res = (HttpWebResponse)req.GetResponse();
    Stream stream = res.GetResponseStream();
    StreamReader sr = new StreamReader(stream);
    string str=sr.ReadToEnd().Replace("\r\n","");
    sr.Close();
    Regex reg = new Regex("<div class=\"hiddenFields\">(?<fno>.*?)</div>");
    MatchCollection mc = reg.Matches(str);
    if (mc != null && mc.Count > 0)
    {
    string session_id = string.Empty;
    string mstr = mc[1].Groups[1].Value;
    Regex regid = new Regex("value=\"(?<fno>.*?)\"/>");
    MatchCollection ma = regid.Matches(mstr);
    if (ma != null && ma.Count > 0)
    {
    session_id = ma[1].Groups[1].Value;
    PostData(session_id);
    }
    }
    } private static void PostData(string session_id)
    {
    string postDatas = @"Session_PageName=Index&Session_LoginId=" + session_id + "&Target_Page=session.redirect&Session_Username=FLY08&Session_Password=ABC123&Session_Remember_Password_Control=true&x=38&y=8";
    Uri url = new Uri("https://secure.brokerforum.com/cgi/en/session.access.login");
    byte[] bytes = Encoding.Default.GetBytes(postDatas);
    HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);
    req.Method = "POST";
    Stream st = req.GetRequestStream();
    st.Write(bytes, 0, bytes.Length);
    st.Close();
                            //下面这行 返回500错误 不知道为什么
    HttpWebResponse res = (HttpWebResponse)req.GetResponse();
    Stream stream = res.GetResponseStream();
    StreamReader sr = new StreamReader(stream);
    string s = sr.ReadToEnd();
    sr.Close();
    }