RawHeaders.Values ​​в Delphi 2010

Я использую компонент в delphi indy idhttp 2010, и у меня есть следующая проблема, я пытаюсь получить все значения необработанных заголовков idHTTP1.Request.RawHeaders.Values ​​['User-Agent'], единственный, о котором я знаю, это пользовательский агент, и мне интересно, где я могу найти список значений для использования в RawHeaders.Values​​.

Кто-нибудь может мне помочь?


person 14K    schedule 09.06.2013    source источник


Ответы (1)


Ваш вопрос можно прочитать несколькими способами.

Вы спрашиваете о том, чтобы «получить все значения необработанных заголовков» — то есть «читать, а не изменять». А затем вы говорите о «значениях для использования в RawHeaders.Values​» — что означает «запись, а не чтение».

На самом деле трудно догадаться, что вы имели в виду здесь.

  • Что ж, если вы хотите прочитать все содержащиеся там значения, вы должны начать с документации для idHTTP1.Request: http://www.indyproject.org/docsite/html/TIdEntityHeaderInfo.html
  • Там вы нажимаете ссылку «свойства», выбираете свойство «RawHeaders» и — после прочтения property RawHeaders: TIdHeaderList; — переходите на http://www.indyproject.org/docsite/html/TIdHeaderList.html
  • Там вы прочитали, что RawHeaders, как и ожидалось, является подклассом TStringList, поэтому вы можете прочитать его со всеми обычными методами, связанными с TStrings.

Нравится

  • idHTTP1.Request.RawHeaders.SaveToFile('1.txt');
  • s := idHTTP1.Request.RawHeaders.CommaText;
  • with idHTTP1.Request.RawHeaders do for i := 0 to Count - 1 do begin s := Strings[i]; ... end;
  • for s in idHTTP1.Request.RawHeaders do begin ... end;

и Т. Д.


  • В качестве альтернативы, если вы хотите написать разумные и безопасные значения, вы должны начать с документации для idHTTP1.Request: http://www.indyproject.org/docsite/html/TIdEntityHeaderInfo.html.
  • Там вы можете увидеть ссылку на «Протокол передачи гипертекста версии 1.1», где вы можете найти большинство из них.
  • Или вы можете добавить некоторые пользовательские нестандартные заголовки с префиксом «X-», предварительно проверив, что ваш сервер не сломается при их обнаружении.
  • Также обратите внимание, что есть некоторые часто используемые нестандартные заголовки или их параметры, например, в content-disposition. Некоторые из них, вероятно, задним числом описаны такими сообществами, как рабочая группа HTML5. А может и нет,
  • Также обратите внимание, что существует ряд подпротоколов, построенных поверх HTTP. Как WebDAV. Например, передача файлов в протоколе Gnutella2 и т. д. Они могут добавлять свои собственные заголовки, которые не были описаны в их основном HTTP-протоколе. Прочтите документацию по тем протоколам, которые могут вас заинтересовать (если таковые имеются).
person Arioch 'The    schedule 09.06.2013