1
您好,我试图做一个应用程序,发布数据到一个joomla登录页面,但我唯一回来的是没有启用cookies。HttpWebRequest POST和Cookies
Function GetPage(ByVal Url As String) As String
Dim CookieJar As New Net.CookieContainer
Dim enc As Encoding = Encoding.GetEncoding(1252)
Dim Data As Byte() = Nothing
Dim PostData As String = ""
If InStr(Url, "?") <> 0 Then
PostData = Url.Substring(InStr(Url, "?"))
Url = Replace(Url, PostData, "")
Url = Url.TrimEnd("?"c)
Data = enc.GetBytes(PostData)
End If
Dim req As System.Net.HttpWebRequest = CType(Net.WebRequest.Create(Url), Net.HttpWebRequest)
req.AllowAutoRedirect = False
req.ContentType = "application/x-www-form-urlencoded"
req.Method = "POST"
If Not Data Is Nothing Then
If Data.Length > 0 Then
req.ContentLength = Data.Length
Dim newStream As Stream = req.GetRequestStream()
newStream.Write(Data, 0, Data.Length)
newStream.Flush()
newStream.Close()
End If
End If
req.CookieContainer = CookieJar
Dim Response As Net.HttpWebResponse = CType(req.GetResponse(), Net.HttpWebResponse)
Dim ResponseStream As IO.StreamReader = New IO.StreamReader(Response.GetResponseStream(), enc)
Dim Html As String = ResponseStream.ReadToEnd()
Response.Close()
ResponseStream.Close()
Return Html
End Function
我该怎么办?
尼斯它的工作! 谢谢 – JerryJ 2009-10-17 11:44:19
我试图做同样的事情(POSTing验证,在cookie中获取会话ID,使用cookie获取查询),并且如果您可以发布您最终使用的整个VB.Net代码,将不胜感激。谢谢。 – Gulbahar 2010-02-08 10:20:14
看起来它可以用于单一登录,但是当我尝试访问受保护的内容时,我再次参考了登录页面。 – Shimmy 2013-06-19 05:40:31