我想用C#登录本网站:这是我的尝试,但它将我发送到第一页。也不回我的下一个页面,应该登录后可以看到,请大家帮我解决此问题:使用C#以编程方式登录网站#
string formParams =
string.Format("mail={0}&password={1}", [email protected]", "admin");
string cookieHeader;
WebRequest req = WebRequest.Create("http://muslimgowns.com/dashboard/login/public_login");
req.ContentType = "application/x-www-form-urlencoded";
req.Method = "POST";
byte[] bytes = Encoding.ASCII.GetBytes(formParams);
req.ContentLength = bytes.Length;
using (Stream os = req.GetRequestStream())
{
os.Write(bytes, 0, bytes.Length);
}
WebResponse resp = req.GetResponse();
cookieHeader = resp.Headers["Set-cookie"];
using (StreamReader sr = new StreamReader(resp.GetResponseStream()))
{
string pageSource = sr.ReadToEnd();
File.AppendAllText("first.txt", pageSource);
}
string pageSource1;
string getUrl = "http://muslimgowns.com/dashboard/home";
WebRequest getRequest = WebRequest.Create(getUrl);
getRequest.Headers.Add("Cookie", cookieHeader);
WebResponse getResponse = getRequest.GetResponse();
using (StreamReader sr = new StreamReader(getResponse.GetResponseStream()))
{
pageSource1 = sr.ReadToEnd();
File.AppendAllText("second.txt", pageSource1);
}
}
你使用例如Fiddler或TamperData(Firefox)查看在主页显示之前实际发送到服务器的请求?你也许想看看[这](http://stackoverflow.com/questions/31585606/checking-if-website-is-working-and-login/31617770#31617770)的答案。 – Streamline