模拟登录成功拿到了cookie
webbrowser访问首页显示还是未登录
[C#] 纯文本查看 复制代码 private string cookie = string.Empty;
private void MainFrm_Load(object sender, EventArgs e)
{
webBrowser1.Navigate("about:blank");
}
public List<string> GetLoginHash()
{
HttpHelper http = new HttpHelper();
HttpItem item = new HttpItem
{
URL = "http://www.sufeinet.com/member.php?mod=logging&action=login"
};
HttpResult result = http.GetHtml(item);
List<string> listHash = new List<string>();
listHash.Add(HttpHelper.GetBetweenHtml(result.Html, "main_messaqge_", "\">"));
listHash.Add(HttpHelper.GetBetweenHtml(result.Html, "name=\"formhash\" value=\"", "\""));
listHash.Add(HttpHelper.GetSmallCookie(result.Cookie));
return listHash;
}
private void btnLogin_Click(object sender, EventArgs e)
{
Login();
webBrowser1.Document.Cookie = cookie;
webBrowser1.Navigate("http://www.sufeinet.com/");
}
public void Login()
{
string name = txtName.Text.Trim();
string pwd = txtPwd.Text.Trim();
List<string> listHash = GetLoginHash();
string url = string.Format("http://www.sufeinet.com/member.php?mod=logging&action=login&loginsubmit=yes&loginhash={0}&inajax=1", listHash[0]);
string postData = string.Format("formhash={0}&referer=http%3A%2F%2Fwww.sufeinet.com%2F.%2F&loginfield=username&username={1}&password={2}&questionid=0&answer=&loginsubmit=true", listHash[1], name, pwd);
HttpHelper http = new HttpHelper();
HttpItem item = new HttpItem
{
URL = url,
Method = "Post",
Referer = "http://www.sufeinet.com/member.php?mod=logging&action=login",
Cookie = listHash[2],
ContentType = "application/x-www-form-urlencoded",
Postdata = postData
};
HttpResult result = http.GetHtml(item);
cookie = HttpHelper.GetSmallCookie(result.Cookie);
txtResult.Text = result.Html + "\r\n\r\n" +cookie;
}
|