Play-Authenticate перенаправление выхода

Я интегрировал модуль Play-Authenticate в свой проект Play 2.0.4. В моем проекте есть два вида: обычный веб-просмотр и мобильный просмотр. Когда приложение выходит из системы, оно просто возвращается на страницу индекса. В таблице маршрутов я вижу, что функциональность выхода из системы указывает на это:

GET     /logout                             com.feth.play.module.pa.controllers.Authenticate.logout

Который выглядит так в коде модуля:

public static Result logout() {
    noCache(response());

    return PlayAuthenticate.logout(session());
}

Приложение работает так: есть файл main.scala.html со ссылками на css/js, который необходим веб-приложению, и страница mobile_main.scala.html с ссылками на css/js, которую использует содержимое мобильных шаблонов. Проблема, с которой я сталкиваюсь, заключается в том, что при выходе из приложения (мобильного или через Интернет) меня перенаправляют на индекс веб-приложения - index.scala.html. Можно ли как-то изменить это, чтобы при необходимости меня можно было перенаправить на страницу мобильного индекса?

Спасибо

Изменить: Это также относится к странице, на которую приложение возвращается после успешного входа в систему.

Хорошо, посмотрев немного дальше, я проследил проблему до Global.java. Я думаю, что мне нужно изменить методы ниже, чтобы решить мою проблему. Так что я могу загрузить другую страницу в зависимости от переданного аргумента.

        @Override
        public Call login() {
            // Your login page
            return routes.Application.login();
        }

        @Override
        public Call afterAuth() {
            // The user will be redirected to this page after authentication
            // if no original URL was saved
            return routes.Application.index();
        }

        @Override
        public Call afterLogout() {
            return routes.Application.index();
        }

1 ответ

Одним из способов является сохранение вашего состояния в сеансе, например, вы можете иметь два состояния: mobile session а также web session а затем проверить это в состоянии перед перенаправлением

if mobile session then redirect mobile index else redirect index
Другие вопросы по тегам