Tomcat 8.5: отсутствует заголовок в ответе HTTP

Использование tomcat8.5 ... Я не получаю полного ответа, как при использовании tomcat8.0.

Есть ли разница между этими двумя версиями в HTTP-запросе или ответе?


ПОСТАВЬТЕ ответ tomcat8.0:

HTTP/1.1 200 OK
Server: Apache-Coyote/1.1
Transfer-Encoding: chunked
Date: Tue, 23 Aug 2016 08:59:48 GMT

ПОСТАВЬТЕ ответ tomcat8.5:

HTTP/1.1 200                                
Transfer-Encoding: chunked
Date: Tue, 23 Aug 2016 09:05:20 GMT

Я использую методы сокета С++ для отправки запроса.


person cristian    schedule 24.08.2016    source источник


Ответы (2)


Tomcat 8.5 прекратил поддержку фразы Reason. См. руководство по миграции:

Изменения HTTP-коннектора

Фразы-причины HTTP были удалены по умолчанию, но их можно снова включить с помощью атрибута конфигурации sendReasonPhrase.

Вы можете снова включить его в своей конфигурации коннектора, но его не будет в Tomcat 9.

<Connector ... sendReasonPhrase="true"> ... </Connector>

person flup    schedule 07.02.2018

Ну, очевидно, есть разница в содержании фактического ответа. Однако заголовок Server: ничего не значит для HTTP 1.1 и не имеет особого значения в протоколе.

Технически два ответа идентичны и несут одинаковую информацию об ответе: это закодированный по частям ответ. Конец истории.

Если вы пишете клиент, использующий HTTP, вы должны быть знакомы с RFC 2616, что объясняет это.

person Sam Varshavchik    schedule 24.08.2016
comment
Спасибо за ответ. Я пытаюсь выяснить, почему такая разница в ответе. Для tomcat8.0: GET / HTTP/1.1" 404 994 и для tomcat8.5: GET / HTTP/1.1" 404 992 в журналах tomcat. Может ли это быть ключом к тому, что происходит? - person cristian; 24.08.2016
comment
Когда я запускаю клиент, у меня одинаково для обеих версий: PUT /printing/pc HTTP/1.1" 200 14 - person cristian; 24.08.2016
comment
Сервер может возвращать любой ответ, соответствующий HTTP 1.1. Оба ответа подходят. HTTP-клиенту все равно. Поскольку заголовок Server: не имеет смысла, это не имеет значения и не должно его волновать. В протоколе не указано. Клиент, у которого возникает проблема, если заголовок существует или не существует, неисправен и должен быть исправлен в соответствии с RFC 2616. - person Sam Varshavchik; 24.08.2016