Конференция "Сети" » TIdHttp и параметры [D7]
 
  • Цукор5 (01.02.17 13:13) [0]
    Добрый день.

    Есть следующий код:

    IdHTTP1.Request.CustomHeaders.Clear;
    IdHTTP1.Request.CustomHeaders.Add('bla-bla-bla');
    IdHTTP1.Get('http://10.5.1.2/cgi/state');



    В сниффере картина следующая:

    GET /cgi/state HTTP/1.1
    Content-Type: text/html
    bla-bla-bla
    Host: 10.5.1.2
    Accept: text/html
    User-Agent: Mozilla/3.0 (compatible; Indy Library)



    Задача изменить очередность строк. По протоколу железки и в некой рабочей программе должно быть так:


    GET /cgi/state HTTP/1.1
    Host: 10.5.1.2
    Accept:text/html,appli
    User-Agent: Mozilla/3.0 (compatible; Indy Library)
    bla-bla-bla



    Каким образом это можно настроить в TIdHTTP?
    Спасибо.
  • rrrrr © (01.02.17 14:18) [1]
    никаким не можно

    сначалала выполняется вот это, и там приклеиваются кастомные хедеры
    procedure TIdEntityHeaderInfo.SetHeaders;

    а хост и все что ниже твоего бла бла бла появляется позднее
    procedure TIdCustomHTTP.ConnectToHost(ARequest: TIdHTTPRequest; AResponse: TIdHTTPResponse);

    юзай tcpклиента, или железке скажи, что она неправа
  • DVM © (11.02.17 10:02) [2]

    > Задача изменить очередность строк. По протоколу железки
    > и в некой рабочей программе должно быть так:

    Зачем это нужно? Стандарт HTTP не обговаривает нигде очередность, смысла в этом нет.
 
Конференция "Сети" » TIdHttp и параметры [D7]
Есть новые Нет новых   [118665   +33][b:0][p:0.001]