2014-12-12 4 views
2

Всякий раз, когда я нажимаю кнопку «Назад», она выводит меня на домашнюю страницу приложения без каких-либо данных даже после успешного выхода из системы. Это только показывает часть заголовка страницы и при нажатии любой опции меню меня приносит вернуться на страницу входа. Я использую Grails-2.3.6 вместе с JDK-6. Так что любой орган может предложить мне, что может быть проблемой, поскольку я новичок в grails?Повторно нажимайте кнопку возврата назад, даже после выхода из системы.

ответ

3

Является общей проблемой в веб-разработке, страница кэшируется в браузере, поэтому, когда вы нажимаете кнопку «Назад», браузер показывает, что находится в его кеше. Чтобы решить эту проблему, вам нужно установить заголовки истечения срока действия на ваших страницах. В Граалей самый простой способ сделать это с помощью фильтров:

Создание тьфу grails-app/conf/RequestFilters.groovy с этим содержанием:

class RequestFilters { 
    def filters = { 
     requestHeadersFilter(controller: '*', action: '*') { 
      after = { 
       response.setHeader("Pragma", "no-cache") 
       response.setDateHeader("Expires", 1L) 
       response.setHeader("Cache-Control", "no-cache") 
       response.addHeader("Cache-Control", "no-store") 
      } 
     } 
    } 
    } 

Для сафари вам понадобится еще один маленький хак, добавить onunload="" к телу макеты (просмотры/макеты)

Смежные вопросы