не отправляется POST в синапс в делфи

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by ferdys, 30 Nov 2015.

  1. ferdys

    ferdys New Member

    Joined:
    28 Oct 2015
    Messages:
    8
    Likes Received:
    0
    Reputations:
    0
    В программе несколько запросов, вот код:
    PHP:
    HTTP.HTTPMethod('GET','https://sait.ru/login/');
    HTML.LoadFromStream(HTTP.Document);
    Token:='xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'

    HTTP.Clear;

    Data:=TStringStream.Create('login=111&pass=222');
    HTTP.Document.LoadFromStream(Data);
    HTTP.Headers.Add('xxxxxxxxxxxx: '+Token);
    HTTP.MimeType:='application/x-www-form-urlencoded';

    HTTP.HTTPMethod('POST','https://sait.ru/login/');
    HTML.LoadFromStream(HTTP.Document);
    Showmessage(HTTP.Headers.Text);
    Showmessage(http.Cookies.Text);

    HTML.Clear;
    Data.Free;

    HTTP.HTTPMethod('post','https://www.sait.ru/web/coment/');  <-----------не проходитв снифере не видно
    HTML
    .LoadFromStream(HTTP.Document);
    Все запросы идут отлично, авторизация проходит, но последний запрос не идут, в снифере его не видно и ответ пустой, там идет пустой ПОСТ запрос.
    Из-за чего такое может быть?
     
  2. ferdys

    ferdys New Member

    Joined:
    28 Oct 2015
    Messages:
    8
    Likes Received:
    0
    Reputations:
    0
    В хеадерс ответ приходит "400 Bad request"
     
  3. ApxaHGe1

    ApxaHGe1 New Member

    Joined:
    21 Aug 2015
    Messages:
    6
    Likes Received:
    0
    Reputations:
    0
    Html.headers.clear;
    Перед последним запросом
     
  4. Mrgun

    Mrgun New Member

    Joined:
    20 Feb 2016
    Messages:
    6
    Likes Received:
    0
    Reputations:
    0
    Можешь поставить try except end; и словить ошибку выполняя последний запросю
     
  5. 1n0y

    1n0y Active Member

    Joined:
    9 May 2009
    Messages:
    276
    Likes Received:
    282
    Reputations:
    2
    "HTTP.HTTPMethod('POST'," - большими буквами надо :)
     
  6. Mrgun

    Mrgun New Member

    Joined:
    20 Feb 2016
    Messages:
    6
    Likes Received:
    0
    Reputations:
    0
    нет никакой разницы. хоть PoSt. Проблема точно не в этом
     
  7. RedPro

    RedPro Banned

    Joined:
    30 Jul 2013
    Messages:
    4
    Likes Received:
    0
    Reputations:
    0
    Убери HTML.Clear; Data.Free; перед последним POST запросом.
     
  8. firmfreez

    firmfreez Banned

    Joined:
    21 Oct 2016
    Messages:
    17
    Likes Received:
    0
    Reputations:
    0
    Убери HTTP.Clear; Вместо этого пробуй HTTP.Document.Clear; HTTP.Headers.Clear;
    Еще один совет. Делай все с расчетом на редирект. Потому что некоторые сайты, например тот же ВК, требует редиректа при входе.
    Поэтому советую написать простенькую функцию редиректа, перед началом какой либо работы с сетью.