在我的grails項目中,我使用了spring security core插件。我已經提供了註銷鏈接爲用戶仍然可以在grails註銷後查看前面的頁面
<g:link controller="logout">Logout</g:link> in my gsp pages.
守則LogoutController爲:
class LogoutController {
/**
* Index action. Redirects to the Spring security logout uri.
*/
def index = {
// TODO put any pre-logout code here
session.invalidate()
redirect uri: SpringSecurityUtils.securityConfig.logout.filterProcessesUrl // '/j_spring_security_logout'
}
}
當用戶點擊它,它重定向用戶到登錄頁面。但是如果用戶點擊瀏覽器的後退按鈕,用戶可以看到前一個工作頁面。我不想將他重定向到前一頁&他應該留在登錄頁面上。我能爲它做些什麼?
附加信息:我創建了一個標籤庫,用於檢查登錄用戶的用戶名。如果它是匿名的,它會重定向到登錄頁面或將其發送到主頁。但是,它的工作,用戶必須點擊一些東西。因爲目前在註銷後,用戶可以通過點擊後退按鈕來看到前一頁。我不想在前一頁重定向他。他應該留在登錄頁面上。
session.invalidate()是沒有必要的。後退按鈕重新加載頁面或緩存在瀏覽器中?頁面是否正確映射以進行身份驗證?你也可以檢查記住我的cookie。 –
它在瀏覽器中顯示緩存頁面。那裏記得我的Cookie設置? –
如果它被緩存,那麼是沒問題的。記住我通常是登錄表單中的複選框。或者可以使用spring security core參數配置參見http://grails-plugins.github.com/grails-spring-security-core/docs/manual/guide/22%20Miscellaneous%20Properties.html –