2010-03-29 73 views
6

我正在使用以下代碼登錄到Craigslist,但尚未成功。如何使用C登錄到Craigslist#

string formParams = string.Format("inputEmailHandle={0}&inputPassword={1}", "[email protected]", "removed"); 
//string postData = "[email protected]&inputPassword=removed"; 
string uri = "https://accounts.craigslist.org/"; 
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(uri); 
request.KeepAlive = true; 
request.ProtocolVersion = HttpVersion.Version10; 
request.Method = "POST"; 
byte[] postBytes = Encoding.ASCII.GetBytes(formParams); 
request.ContentType = "application/x-www-form-urlencoded"; 
request.ContentLength = postBytes.Length; 

Stream requestStream = request.GetRequestStream(); 
requestStream.Write(postBytes, 0, postBytes.Length); 
requestStream.Close(); 
HttpWebResponse response = (HttpWebResponse)request.GetResponse(); 
cookyHeader = response.Headers["Set-cookie"]; 

string pageSource; 
string getUrl = "https://post.craigslist.org/del"; 
WebRequest getRequest = WebRequest.Create(getUrl); 
getRequest.Headers.Add("Cookie", cookyHeader); 
WebResponse getResponse = getRequest.GetResponse(); 
using (StreamReader sr = new StreamReader(getResponse.GetResponseStream())) 
{ 
    pageSource = sr.ReadToEnd(); 
} 
+0

我剛剛「假」的「AllowAutoRedirect」,它開始工作。好東西...... request.AllowAutoRedirect = false; – user304901 2010-03-31 07:56:32

回答

1

使用WebTest記錄您的登錄過程,然後生成代碼。這將幫助您瞭解您的代碼出了什麼問題。