Как отправить данные на сервер по
методам GET/POST
Источник: vbstreets.ru
Надо добавь WinSock Control и кнопку. В код формы
вставить:
Winsock1.Protocol = sckTCPProtocol 'Установка протокола
Winsock1.Connect "имя_сервера", 80 'подключение через
порт 80
While Not Winsock1.State = 7 'Ждем, пока подключится.
DoEvents '
Wend '
Parametrs="параметр1=значение&параметр2=значение"
'сохраняем параметры в 'переменной
Далее все зависит от того, каким методом
передавать. Если через метод POST, то:
Winsock1.SendData "POST /адрес_скрипта HTTP/1.1" & vbCrLf
Winsock1.SendData "Content-Type: application/x-www-form-urlencoded" & vbCrLf
Winsock1.SendData "Host: имя_сервера" & vbCrLf
Winsock1.SendData "Content-Length: " & len(Parametrs) & vbCrLf &
vbCrLf
Winsock1.SendData Parametrs & vbCrLf
Если через метод GET, то:
Winsock1.SendData "GET /адрес_скрипта?" & Parametrs &
" HTTP/1.0" & vbCrLf & vbCrLf
Далее сервер запустит скрипт и передаст данные,
еоторые выдаст скрипт, т.е страницу, которая
появилась бы в браузере. Если надо принять эти
данные, то добавь еще это:
Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
Dim Data As String
Winsock1.GetData Data
End Sub
В переменной Data будут только что принятые
данные, сохрани их где-нибудь (например в другой
переменной), можешь делать с ними, что захочешь.
Сначала сервер выдаст ответ типа:
HTTP/1.1 200 OK
Server: Microsoft-IIS/5.0
Date: Fri, 22 Feb 2002 11:12:20 GMT
Connection: Keep-Alive
Content-Length: 8
Content-Type: text/html
Set-Cookie: ASPSESSIONIDQGQQQLBQ=DFPBBDBDJOGMHODFDFALACNK; path=/
Cache-control: private
После того, как параметры закончатся, будет
пустая строка, а потом страница.
Количество символов указано в параметре Content-Length.
|