2013-06-25 57 views
1

我試圖使一個Facebook遊戲殭屍..問題是,用戶需要登錄Facebook的啓用cookie。我試圖用httpwebrequest做到這一點。一切都很好,但我得到了一個錯誤說我的瀏覽器不支持cookie在網頁瀏覽器的WinForms

這裏是我曾經對於HttpWebRequest

Dim postData As String = "lsd=AVrFBNXT&display=&enable_profile_selector=&legacy_return=1&next=&profile_selector_ids=&trynum=1&timezone=-120&lgnrnd=163248_FehM&lgnjs=1372203160&email=" & (TextBox1.Text) & "&pass=" & (TextBox2.Text) & "f&default_persistent=1" 
    Dim tempcookies As New CookieContainer 
    Dim encoding As New UTF8Encoding 
    Dim byteData As Byte() = encoding.GetBytes(postData) 
    Dim postreq As HttpWebRequest = DirectCast(HttpWebRequest.Create("https://www.facebook.com/login.php"), HttpWebRequest) 
    postreq.Method = "POST" 
    postreq.KeepAlive = True 
    postreq.CookieContainer = tempcookies 
    postreq.UserAgent = "Mozilla/5.0 (Windows; U; Windows NT 6.1; ru; rv:1.9.2.3) Gecko/20100401 Firefox/4.0 (.NET CLR 3.5.30729" 
    postreq.ContentType = "application/x-www-form-urlencoded" 
    postreq.Referer = "https://www.facebook.com/login.php" 
    postreq.ContentLength = byteData.Length 
    Dim postreqstream As Stream = postreq.GetRequestStream() 
    postreqstream.Write(byteData, 0, byteData.Length) 
    postreqstream.Close() 
    Dim postresponse As HttpWebResponse 
    postresponse = DirectCast(postreq.GetResponse, HttpWebResponse) 
    tempcookies.Add(postresponse.Cookies) 
    logincookie = tempcookies 
    Dim postreqreader As New StreamReader(postresponse.GetResponseStream()) 
    Dim thepage As String = postreqreader.ReadToEnd 
    WebBrowser1.DocumentText = thepage 
+0

您使用的瀏覽器是?你有沒有啓用cookies? –

+0

我使用普通的.net webbrowser工具箱中找到。這是我想知道如何啓用Cookie –

+0

任何線索傢伙? –

回答

1

WebBrowser控件的代碼基本上是一個嵌入式的互聯網瀏覽器,因此股Internet Explorer的設置。

如果你的IE瀏覽器啓用cookie,那麼你的瀏覽器控件已啓用它們也和你的問題可能是在其他地方。

要檢查你的IE設置,請按照下列步驟操作:

  1. 選擇在IE的「工具」菜單下的「Internet選項」;
  2. 選擇「隱私」選項卡。
  3. 單擊「設置」組框的「高級」按鈕。
  4. 勾選「覆蓋自動cookie處理」選項。
  5. 選中「接受」選項。
  6. 單擊「確定」