Рубрики
Без рубрики

Советы и рекомендации по Java: Отключение кэширования содержимого с помощью Spring

Вы когда-нибудь пробовали проверить разработанное вами веб-приложение, нажав кнопку “Назад” в вашем браузере, и задавались вопросом, почему ваше веб-приложение не перенаправляет вас на страницу после входа в систему? Вы можете легко решить эту проблему с помощью небольшого трюка с Java! Узнайте, как отключить кэширование содержимого с помощью Spring.

Автор оригинала: Abdullah Al Mamun Oronno.

Вы когда-нибудь проверяли какую-либо ситуацию в своем разработанном веб-приложении, например, что произошло, если вы нажали кнопку “Назад” в своем браузере после входа в систему?

Что ж, если ваше веб-приложение было разработано должным образом, вы ожидаете, что оно перенаправит вас на страницу после входа в систему (обычно на домашнюю страницу) вместо отображения страницы формы входа.

Однако проблема в том, что когда вы нажимаете кнопку “Назад”, ваш браузер обычно не отправляет другой запрос GET на сервер. Вместо этого он просматривает веб-страницу из локально кэшированных ответов. Это называется кэширование браузера/HTTP-кэширование , это может произойти не только на странице входа в систему, но и на любой странице. Это поведение фактически контролируется Cache-Control заголовок.

Вы можете избежать этого условия, если скажете своему браузеру не кэшировать динамическое содержимое. Чтобы сделать это, вам придется написать некоторый заголовок управления кэшем.

Ну, в Java Spring Framework есть очень простой способ остановить кэширование динамического содержимого. В контексте вашего сервлета просто объявите компонент WebContentИнтерцептор и определите его свойства.

    
        
        
            
            
            
                
                
                
                
            
        
    

Подробнее проверьте объявление контекста сервлета здесь .

Вышеупомянутый код на самом деле является частью моего созданного дизайна, Скелет проекта веб-приложения Spring 4

Оригинал: “https://www.codementor.io/@oronno/disable-content-caching-with-spring-du107xs27”