2015-09-22 1 views
0

Форма входа в мое приложение реализована с помощью скрытой формы (которая накладывается на страницу и отображается с помощью переключения данных).Ember Simple Auth: нет необходимости в/логинном пути?

Это хорошо и удобно, однако проблема возникает, когда пользователь, не прошедший проверку подлинности, хочет получить доступ к защищенному маршруту - Ember Simple Auth хочет перенаправить на /login. Как отобразить регистрационную форму в этом случае?

ответ

1

Это легко - в вашем приложении маршрут отменяет действие sessionRequiresAuthentication. Это действие определяется в прикладном маршрутной Mixin, и по умолчанию выглядит следующим образом:

sessionRequiresAuthentication: function() { 
    this.transitionTo(Configuration.authenticationRoute); 
}, 

Вместо того, чтобы переходить вы можете написать код, чтобы открыть форму входа

+0

Но в этой акции я должен транзитом где-то, не так ли? Когда пользователь вводит URL-адрес маршрута, пока ничего не отображается, и форма входа еще не помещена в DOM. – user3248821

+1

Если какой-то маршрут был отображен раньше, пользователь останется на этом маршруте, и форма входа должна быть доступна. Но, если пользователь напрямую переходит на запрещенный маршрут, вы должны перенаправить их где-нибудь. –

+0

Если я переопределяю обработку только для того, чтобы ничего не делать, и чем пытаюсь получить доступ к защищенному маршруту, я получаю «Ошибка при обработке маршрута: о переходе не определено». – user3248821