d3drm писал(а):http это отпрака гипер текста, куда ты его собрался через http отправлять?
d3drm писал(а):как на счет ie контрола?
Option Explicit
Private Sub Form_Load()
Winsock1.RemoteHost = "google.com"
Winsock1.RemotePort = 80
Winsock1.Connect
End Sub
Private Sub Winsock1_Connect()
Winsock1.SendData "GET /search?q=help+me%2C+i%27m+lost HTTP/1.1" & vbCrLf
Winsock1.SendData "Host: www.google.com" & vbCrLf
Winsock1.SendData vbCrLf
End Sub
Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
Dim s As String
Winsock1.GetData s
MsgBox s
End Sub
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; ru) Opera 9.0
Host: localhost:82
Accept: text/html, application/xml;q=0.9, application/xhtml+xml, image/png, image/jpeg, image/gif, image/x-xbitmap, */*;q=0.1
Accept-Language: ru,en;q=0.9
Accept-Charset: windows-1252, utf-8, utf-16, iso-8859-1;q=0.6, *;q=0.1
Referer: http://localhost:82/путь
Connection: Keep-Alive, TE
TE: deflate, gzip, chunked, identity, trailers
Content-Type: application/x-www-form-urlencoded
http://head.imho.ru/click.ng/impt=imp&place=vbstreets600x90&id=140405
Content-Length: 309
subject=&addbbcode18=%23444444&addbbcode20=12&helpbox=%CF%EE%E4%F1%EA%E0%E7%EA%E0%3A+%CC%EE%E6%ED%EE+%E1%FB%F1%F2%F0%EE+%EF%F0%E8%EC%E5%ED%E8%F2%FC+%F1%F2%E8%EB%E8+%EA+%E2%FB%E4%E5%EB%E5%ED%ED%EE%EC%F3+%F2%E5%EA%F1%F2%F3&message=dasd&attach_sig=on¬ify=on&mode=reply&t=17214&post=%CE%F2%EF%F0%E0%E2%E8%F2%FC
нужно отправить некторые данные (строку обычную) из текстбокса скрипту через http.
POST /posting.php HTTP/1.1:
Host: localhost:82
Content-Type: application/x-www-form-urlencoded
Content-Length: 309
<br>
<br>
subject=&addbbcode18=%23444444&addbbcode20=12&helpbox=%CF%EE%E4%F1%EA%E0%E7%EA%E0%3A+%CC%EE%E6%ED%EE+%E1%FB%F1%F2%F0%EE+%EF%F0%E8%EC%E5%ED%E8%F2%FC+%F1%F2%E8%EB%E8+%EA+%E2%FB%E4%E5%EB%E5%ED%ED%EE%EC%F3+%F2%E5%EA%F1%F2%F3&message=dasd&attach_sig=on¬ify=on&mode=reply&t=17214&post=%CE%F2%EF%F0%E0%E2%E8%F2%FC
GM писал(а):Проблема видимо состоит не в том как отправить, а что отправлять.
Dim objClientHTTP As MSXML2.XMLHTTP40
Dim objServerHTTP As MSXML2.ServerXMLHTTP40
#If KP_CLIENT_HTTP Then
Dim objSrvHTTP As MSXML2.XMLHTTP40
#Else
Dim objSrvHTTP As MSXML2.ServerXMLHTTP40
#End If
Dim objXMLReceive As MSXML2.DOMDocument
Dim s As String
Dim b As String
Dim lResolve As Long: lResolve = 30000&
Dim lConnect As Long: lConnect = 30000&
Dim lSend As Long: lSend = 15000&
Dim lReceive As Long: lReceive = 30000&
#If KP_CLIENT_HTTP Then
Set objSrvHTTP = New MSXML2.XMLHTTP40
#Else
130 Set objSrvHTTP = New MSXML2.ServerXMLHTTP40
131 objSrvHTTP.setTimeouts lResolve, lConnect, lSend, lReceive
#End If
140 If mMain.UseProxy Then
#If KP_DEBUG Then
150 LogInfo "================================="
160 LogInfo "ProxyServer: " & mMain.ProxyServer
170 LogInfo "ProxyUser: " & mMain.ProxyUser
180 LogInfo "ProxyPass: " & mMain.ProxyPass
190 LogInfo "================================="
#End If
200 If mMain.ProxyUser = PROXYPRECONFIG Then
210 objSrvHTTP.setProxy SXH_PROXY_SET_PRECONFIG, mMain.ProxyServer
Else
220 objSrvHTTP.setProxy SXH_PROXY_SET_PROXY, mMain.ProxyServer
230 objSrvHTTP.setProxyCredentials mMain.ProxyUser, mMain.ProxyPass
End If
End If
240 objSrvHTTP.Open "POST", CStr(URL), False
250 objSrvHTTP.setRequestHeader "Content-Type", ContentType ' "application/x-www-form-urlencoded"
260 If Len(UseSignature) > 0 Then
270 Signature = mHTTP.GetSignature(SendQuery, ErrCode, ErrDesc)
#If KP_DEBUG Then
LogInfo "Signature: " & Signature
LogInfo "Signature: " & ErrCode & " " & ErrDesc
#End If
If ErrCode <> 0 Then
GoTo lb_out
End If
280 objSrvHTTP.setRequestHeader UseSignature, Signature
End If
290 objSrvHTTP.send SendQuery
XairOn писал(а):2GM, ага... так значит мне HTTP запрос поймать надо и его отправлять на сервак... а это всё таки через winsock делать надо??? Как Jenizix говорил?
XairOn писал(а):GM писал(а):Проблема видимо состоит не в том как отправить, а что отправлять.
Ты не совсем прав, проблема как раз не столько в том, что отправлять, сколько в том, как отправлять. В том запросе, который ты нам тут показал всё ясно, но не ясно, как отправлять его??? А именно: это одна строка, или надо отправлять всё отдельно, разделяя vbCrLf ???
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 140