Почему мои страницы JSP не выводят длину содержимого? - PullRequest
0 голосов
/ 09 января 2019

Я настроил CloudFront перед моим веб-приложением, которое использует страницы JSP, но оно не будет кэшировать мою страницу, поскольку заголовок Content-Length не установлен.

Есть ли способ, которым я могу заставить JSP включить Content-Length, или мне нужно сделать что-то уродливое, например, иметь фильтр, который передает содержимое, чтобы определить его длину, а затем направляет его в поток ответа (настройка заголовок ContentLength первым).

Ответы [ 2 ]

0 голосов
/ 09 января 2019

Я нашел способ сделать это, используя фильтр , который хорошо подходит для моих нужд. Я даже сначала обрабатываю JSP, чтобы удалить пробелы, а затем связываю результат этого в ContentLengthFilter.

0 голосов
/ 09 января 2019

Вы можете установить Content-Length, используя JSP HttpServletResponse

Объект ответа является экземпляром объекта javax.servlet.http.HttpServletResponse.

Мы можем использовать следующие методы для установки заголовка ответа HTTP в вашей программе сервлета.

Вызов setContentLength метод

Устанавливает длину тела содержимого в ответе. В сервлетах HTTP этот метод устанавливает заголовок HTTP Content-Length.

...