看板 Visual_Basic 關於我們 聯絡資訊
借上面標題用一下 最近我也卡點了 某些網站登入時,必須存取cookies 他會出現以下訊息 To login you must have cookies enabled. 例: http://speed.travian.com/ 在HttpWebRequest中我有保留 Session 但cookies這部份就無法解決了 想請板上各位幫忙一下 如能幫忙解答,也將贈2500做為感謝 目前程式如下 ------------------------------------------------------------- Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Dim myAddress As String = "http://speed.travian.com/login.php" req = HttpWebRequest.Create(myAddress) req.CookieContainer = cc result = req.GetResponse() ReceiveStream = result.GetResponseStream() encode = System.Text.Encoding.GetEncoding("UTF-8") '上面這行是看 你網頁是用什麼編碼 就打那個編碼就好ㄌ sr = New StreamReader(ReceiveStream, encode) srr = sr.ReadToEnd() TextBox1.Text = srr WebBrowser1.DocumentText = srr End Sub Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click 'Dim httpResp As System.Net.HttpWebResponse Dim httpUrl2 As New System.Uri("http://speed.travian.com/login.php") req2 = CType(WebRequest.Create(httpUrl2), HttpWebRequest) req2.CookieContainer = req.CookieContainer req2.Method = "POST" req2.ContentType = "application/x-www-form-urlencoded" Dim bytesData() As Byte = Encoding.ASCII.GetBytes(TextBox1.Text) req2.ContentLength = bytesData.Length Dim postStream As Stream = req2.GetRequestStream() postStream.Write(bytesData, 0, bytesData.Length) postStream.Close() Dim res As HttpWebResponse = CType(req2.GetResponse(), HttpWebResponse) Dim reader As StreamReader = New StreamReader(res.GetResponseStream, System.Text.Encoding.GetEncoding("BIG5")) Dim respHTML As String = reader.ReadToEnd() res.Close() TextBox1.Text = respHTML WebBrowser1.DocumentText = respHTML End Sub -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.143.92.38