У меня есть HTTP-клиент, который задает в заголовке соединения следующее значение при выполнении запроса:
Connection: close
Однако, когда сервер отправляет ответ, он устанавливает заголовок Keep-Alive:
Connection: Keep-Alive
Это кажется мне интуитивно неправильным, и мне интересно, как клиент должен обрабатывать такой ответ от сервера? Кроме того, почему сервер отвечает сообщением Keep-Alive, когда клиент запрашивает закрытие соединения, действительно ли это допустимо?
Согласно HTTP RFC:
«HTTP / 1.1 определяет опцию« закрыть »соединение для отправителя, чтобы сигнализировать, что соединение будет закрыто после завершения ответа. Например,
Connection: close
в полях заголовка запроса или ответа указывает, что соединение НЕ ДОЛЖНО считаться постоянным (раздел 8.1) после завершения текущего запроса / ответа. "