0
如何篩選指定頁面和控制器以進行登錄檢查?Grails如何使用篩選器進行頁面登錄檢查
而頁面是CMS中的配置,我想如果我想過濾頁面,我需要重命名CMS中的頁面名稱以便使用通配符來過濾。
還有其他更好的方法嗎?
如何篩選指定頁面和控制器以進行登錄檢查?Grails如何使用篩選器進行頁面登錄檢查
而頁面是CMS中的配置,我想如果我想過濾頁面,我需要重命名CMS中的頁面名稱以便使用通配符來過濾。
還有其他更好的方法嗎?
例如,您的應用程序有兩個名爲login和customer的控制器。 登錄控制器有兩個操作。一個用於輸入登錄頁面和另一個用於驗證的操作。
class LoginController {
def index() {
render(view:'/loginPage')
}
def authenticate() {
//check username and password is valid.
if(valid){ // if valid store the user in session for check user logged in or not in filter or anywhere
session.loggedInUser = user
redirect(controller:'dashboard',action:'home')
}
else{
def msg = "Login failed : Invalid Username/Password !"
render(view:'/loginPage',model:[msg:msg])
}
}
僅登錄後,我們可以允許訪問CustomerController。 對於首先創建過濾器,並在過濾器內複製以下內容。
allExceptLogin(controller:'login', action:'*',invert:true) {
before = {
if(!session.loggedInUser) {
def msg = "You Should Login"
render(view:'/loginPage',model:[msg:msg])
return false
}
}
}
除登錄控制器外,每個控制器的訪問都需要在過濾器中檢查的有效用戶登錄。
哪個插件用於登錄檢查。 – 2014-11-03 04:43:47
我不使用插件 – 2014-11-03 05:15:54
使用Spring Security Core插件。 http://grails.org/plugin/spring-security-core – saw303 2014-11-03 06:40:45