Теперь разберем отправку данных на сервер методом POST
Для начала определимся что у нас все тоже самое что и с GET:
Код:
uses ...HTTPSend... HTTP.MimeType := 'application/x-www-form-urlencoded'; HTTP.UserAgent:='Opera/9.80 (Windows NT 5.1; U; ru) Presto/2.9.168 Version/11.51'; HTTP.Protocol:= '1.1'; HTTP.Headers.Add('Accept-Encoding: gzip,deflate'); HTTP.Headers.Add('Accept: text/html, application/xml;q=0.9, application/xhtml+xml, image/png, image/webp, image/jpeg, image/gif, image/x-xbitmap, */*;q=0.1'); HTTP.Headers.Add('Accept-Language: ru-RU,ru;q=0.9,en;q=0.8'); HTTP.Headers.Add('Expect: 100-continue'); HTTP.HTTPMethod('GET', 'URL');
Но есть пару но:
Во-первых укажем что передаем POST а во-вторых создадим параметры это то что собственно и будет передаваться.
Код:
var params: string; begin ... params := 'st.email=' + Edit1.Text + '&st.password=' + Edit2.Text; ... перед отправкой (HTTP.HTTPMethod) ... HTTP.Document.Write(Pointer(Params)^, Length(Params)); ... end;
Таким образом мы прикрепим параметры к отправке. В нашем случае передается e-mail из Edit1 и пароль из Edit2. Все достаточно просто.
Ну а теперь полный готовый кусок кода:
Код:
... var http: THTTPSend; //обьявляем переменную синапса params: string; begin http := THTTPSend.Create; http.Document.Clear; http.Headers.Clear; params := 'st.email=' + Edit1.Text + '&st.password=' + Edit2.Text; //наши данные HTTP.MimeType := 'application/x-www-form-urlencoded'; //наши заголовки и указание типов данных HTTP.UserAgent:='Opera/9.80 (Windows NT 5.1; U; ru) Presto/2.9.168 Version/11.51'; HTTP.Protocol:= '1.1'; HTTP.Headers.Add('Accept-Encoding: gzip,deflate'); HTTP.Headers.Add('Accept-Language: ru-RU,ru;q=0.9,en;q=0.8'); HTTP.Headers.Add('Expect: 100-continue'); HTTP.Document.Write(Pointer(Params)^, Length(Params)); //прикрепляем параметры HTTP.HTTPMethod('POST', 'URL'); //отправляем end;