Как работать с сеансами Grails Http - PullRequest
2 голосов
/ 09 августа 2011

Я новичок в Grails и борюсь с сеансами ..

В контроллере, как проверить, есть ли у пользователя действительный сеанс?В Java / Spring MVC это просто request.getSession (), так каково соглашение в Grails?

Как добавить / получить значения из сеанса?

Спасибо,

Ответы [ 4 ]

4 голосов
/ 09 августа 2011

Grails использует тот же API сервлетов, что и Java EE, хотя и предоставляет несколько дополнительных удобных методов. Внутри контроллера Grails, taglib или GSP существуют неявные переменные request и session, которые относятся к текущим HTTPServletRequest и HttpSession .

Вот пример того, как Grails делает работу с этими объектами несколько удобнее:

Java

Object fooAttr = session.getAttribute("foo");

Grails

def fooAttr = session["foo"]
3 голосов
/ 09 августа 2011

вы можете работать с объектом "сеанс"

сеанс grails

1 голос
/ 19 июня 2014

После входа пользователя установите значение (имя пользователя) в сеансе.Например, класс вашего домена User.groovy.Итак, в вашем методе входа в систему в контроллере: вы можете сделать:

def login()
{
    def u = new User()
    u.properties[
            'login',
            'password',
            ] = params        
    if(u.save())
    session.user = u
}

После этого, когда вы захотите проверить, продолжается ли сеанс, просто выполните

if(session.user != null)
//your code
0 голосов
/ 30 июля 2014

объект сеанса в grails имеет два метода i.e-getAttribute () и setAttribute (), которые можно использовать для получения / установки значения в сеансе.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...