大侠帮忙看看,Winsock提交表单POST的问题
'点一下Command4,Winsock返回的数据存放在Text1里面,返回的数据如下:
HTTP/1.1 400 Bad Request
Server: Apache-Coyote/1.1
Transfer-Encoding: chunked
Date: Fri, 01 Dec 2006 03:47:44 GMT
Connection: close
0
'代码如下,大家帮忙看看是哪里不对
Private Sub Command4_Click()
On Error Resume Next
tcpServer.Connect "trans.yninfo.com", 80 '设置主机ip port
DoEvents
End Sub
Private Sub tcpServer_Connect()
'向服务器发送数据 打开主页面
Dim strData As String
strData = ""
strData = strData & "POST /total/RechResultadd/ResultAddForSour.jsp HTTP/1.1" & vbCrLf
strData = strData & "Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, application/x-shockwave-flash, */*" & vbCrLf
strData = strData & "Accept-Encoding: gzip , deflate" & vbCrLf
strData = strData & "Accept-Language: zh-cn" & vbCrLf
strData = strData & "Content-Length: 505" & vbCrLf
strData = strData & "Cache-Control: no-cache" & vbCrLf
strData = strData & "Connection: Keep-Alive" & vbCrLf & vbCrLf
strData = strData & "Content-Type: application/x-www-form-urlencoded" & vbCrLf
strData = strData & "Host: trans.yninfo.com" & vbCrLf
strData = strData & "Referer: http://news.yninfo.com/yunnan/subject/px/index.html" & vbCrLf
strData = strData & "User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; Maxthon; Alexa Toolbar; .NET CLR 1.1.4322; .NET CLR 2.0.50727)" & vbCrLf & vbCrLf
strData = strData & "nRid=1164597835463&check1164597835463=云南联通&check1164597835463=前进牛奶&check1164597835463=渤骏装家汉&check1164597835463=拓东酱油&check1164597835463=福林堂&check1164597835463=江东集团&check1164597835463=腾药&check1164597835463=城建股份&check1164597835463=雪兰牛奶&check1164597835463=完美中国&submitok=提交&userName=userName&nRid=1164597835463" & vbCrLf
tcpServer.SendData strData
DoEvents
If tcpServer.State = 7 Then
Text2.Text = "已连接..."
If tcpServer.State = 9 Then
Text2.Text = "连接错误,请检查..."
End If
End If
End Sub
Private Sub tcpServer_DataArrival _
(ByVal bytesTotal As Long)
Dim strData() As Byte
ReDim GotDat(0 To bytesTotal - 1)
tcpServer.GetData strData, vbArray + vbByte
Dim strdata2 As String
Dim i As Long
Dim ii As Long
Dim ss As String
Dim s1 As String
For i = 0 To bytesTotal - 1
If AscB(strData(i)) > 127 Then
s1 = Chr(strData(i) * 256 + strData(i + 1))
i = i + 1
Else
s1 = Chr(strData(i))
End If
strdata2 = strdata2 + s1
Next
Text1.Text = strdata2
End Sub
问题点数:0、回复次数:3Top
1 楼xiamms()回复于 2006-12-03 16:20:53 得分 0
strData = strData & "Connection: Keep-Alive" & vbCrLf & vbCrLf
注意一下你这句代码,后面多了一个 回车符 & vbCrLfTop
2 楼Dunzip(路登软件,一路登先 / http://www.dunzip.com)回复于 2006-12-20 20:30:16 得分 0
例子
http://www.dunzip.com/download/GetWebSearch.rar
Top
3 楼tongshisou()回复于 2006-12-25 16:12:56 得分 0
同时搜网(www.tongshisou.com)是一个很有创意的搜索网站,是目前最易用,最方便的整合搜索网站,本身
不做搜索却把业界的搜索引擎聚合在自己网站中,包括百度,GOOGLE,YAHOO,中搜,爱问,搜狗,奇虎,腾讯搜
搜,OPENV,TVIX,有网页 新闻 图片 音乐 视频 地图 工作 餐饮 的搜索,可谓很全哦,搜索起来确实方便,
而且很易用,可以把结果同时在一个网页中以分割条形式分开,而且可以分割成2-4个窗口,大家可以一试哦
www.tongshisou.comTop





