2014-12-12 5 views
2

브라우저 백 버튼을 누를 때마다 성공적으로 로그 아웃 한 후에도 데이터가없는 응용 프로그램의 홈 페이지로 이동합니다.이 페이지 헤더 부분 만 표시되며 메뉴 옵션을 누르면 로그인 페이지로 돌아갑니다. JDK-6과 함께 Grails-2.3.6을 사용하고 있습니다. 그래서 어떤 몸이라도 내가 grails에 새로운 것이므로 문제가 될 수 있다고 제안 할 수 있습니까?로그 아웃 후 브라우저 다시 버튼을 누르면 다시 로그인

답변

3

웹 개발의 일반적인 문제는 페이지가 브라우저에 캐시되므로 뒤로 버튼을 누르면 브라우저에 캐시에있는 내용이 표시된다는 것입니다. 이 문제를 해결하려면 페이지에 만료 헤더를 설정해야합니다. Grails의에서 할 수있는 가장 쉬운 방법은 필터를 사용한다 :

을이 내용으로 저런 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=""를 추가 (보기/layouts)

관련 문제