我的代码用的是 VB.NET,代码并不长, 如下: Dim req As HttpWebRequest = CType(WebRequest.Create("http://nbwd/Exap/php5pro/16/logon_form.php"), HttpWebRequest)
req.Method = "POST"
req.ContentType = "application/x-www-form-urlencoded" '所要 post 的数据
Dim str As String = "username=admin&password=admin&submit=%B5%C7%C2%BC" Dim data() As Byte = System.Text.Encoding.ASCII.GetBytes(str)
req.ContentLength = data.Length Dim myCoding As System.Text.Encoding = System.Text.Encoding.GetEncoding("GBK") Dim postSTream As Stream = req.GetRequestStream
postSTream.Write(data, 0, data.Length) Dim resp As HttpWebResponse = CType(req.GetResponse(), HttpWebResponse) Dim reader As StreamReader = New StreamReader(resp.GetResponseStream, myCoding)
Dim respHTML As String = reader.ReadToEnd
Me.TextBox1.Text = respHTML多次试验,总是得不出想要的结果~~ 所以,有以个几个问题比较怀疑, 请看1. 上面的代码哪里需要改?
2. 创建的 HttpWebRequest 时使用的 URL 对应是是 <form>中的 action 那个网页吧?
3. 如果成功的话,返回的结果就是登陆之后对应的 HTML 页面代码,是这样吧?希望高手们能不吝赐教, 十分感谢~~~
req.Method = "POST"
req.ContentType = "application/x-www-form-urlencoded" '所要 post 的数据
Dim str As String = "username=admin&password=admin&submit=%B5%C7%C2%BC" Dim data() As Byte = System.Text.Encoding.ASCII.GetBytes(str)
req.ContentLength = data.Length Dim myCoding As System.Text.Encoding = System.Text.Encoding.GetEncoding("GBK") Dim postSTream As Stream = req.GetRequestStream
postSTream.Write(data, 0, data.Length) Dim resp As HttpWebResponse = CType(req.GetResponse(), HttpWebResponse) Dim reader As StreamReader = New StreamReader(resp.GetResponseStream, myCoding)
Dim respHTML As String = reader.ReadToEnd
Me.TextBox1.Text = respHTML多次试验,总是得不出想要的结果~~ 所以,有以个几个问题比较怀疑, 请看1. 上面的代码哪里需要改?
2. 创建的 HttpWebRequest 时使用的 URL 对应是是 <form>中的 action 那个网页吧?
3. 如果成功的话,返回的结果就是登陆之后对应的 HTML 页面代码,是这样吧?希望高手们能不吝赐教, 十分感谢~~~
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货