.NET HTTP POST Method - Cookies issue
12,200
Here's a working example I wrote for you:
var cookies = new CookieContainer();
ServicePointManager.Expect100Continue = false;
var request = (HttpWebRequest)WebRequest.Create("http://www.hotfile.com/login.php");
request.CookieContainer = cookies;
request.Method = "POST";
request.ContentType = "application/x-www-form-urlencoded";
using (var requestStream = request.GetRequestStream())
using (var writer = new StreamWriter(requestStream))
{
writer.Write("user=XX&pass=XX&returnto=/");
}
using (var responseStream = request.GetResponse().GetResponseStream())
using (var reader = new StreamReader(responseStream))
{
var result = reader.ReadToEnd();
Console.WriteLine(result);
}
Author by
Admin
Updated on June 11, 2022Comments
-
Admin almost 2 years
I'm trying to use C# to login to hotfile.com. The first big issue was to overcome the 417 Error, which this line solved it:
System.Net.ServicePointManager.Expect100Continue = false;
Now I'm getting this error as I try to login using POST:
You don't seem to accept cookies. Cookies are required in order to log in. Help
I've tried several times, and googled around and I still can't login to Hotfile.com.. My code is this:
string response; byte[] buffer = Encoding.ASCII.GetBytes("user=XX&pass=XX"); CookieContainer cookies = new CookieContainer(); HttpWebRequest WebReq = (HttpWebRequest)WebRequest.Create("http://hotfile.com/login.php"); WebReq.Credentials = new NetworkCredential("XX", "XX"); WebReq.PreAuthenticate = true; WebReq.Pipelined = true; WebReq.CookieContainer = cookies; WebReq.KeepAlive = true; WebReq.Method = "POST"; WebReq.ContentType = "application/x-www-form-urlencoded"; WebReq.ContentLength = buffer.Length; WebReq.UserAgent = "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; SLCC1)"; Stream PostData = WebReq.GetRequestStream(); PostData.Write(buffer, 0, buffer.Length); PostData.Close(); HttpWebResponse WebResp = (HttpWebResponse)WebReq.GetResponse(); Stream Answer = WebResp.GetResponseStream(); StreamReader _Answer = new StreamReader(Answer); response = _Answer.ReadToEnd(); File.WriteAllText("dump.html", response);
Naturally, the user and pass would have your accounts values.