そのため、純粋なトークン ベースのアプローチを使用して Ember-Auth の実装に成功しました。ユーザーがサインインしたら、アプリのルートにリダイレクトしたいと考えています。
私は使用できることを知っていますactionRedirectable
(ドキュメントのhttp://ember-auth.herokuapp.com/docs ) が、私は純粋なトークン アプローチを使用しており、Cookie に何も保存していないため、ページが表示されるたびにユーザーを効果的にサインインしています。 a を使用して更新しますremember_token
(これは理想的ではないように思えますが、すぐに解決します)。これは、を使用actionRedireactable
すると、ユーザーがページを更新するたびにリダイレクトされることを意味します。おそらくどこかにアンチパターンがありますか?
とにかくここに私のものがありますSignInView
:
App.SignInView = Ember.View.extend({
templateName: 'auth/sign_in',
email: null,
password: null,
submit: function(event, view) {
event.preventDefault();
event.stopPropagation();
App.Auth.signIn({
data: {
email: this.get('email'),
password: this.get('password')
}
});
}
});
signIn呼び出しthis.get("controller").transitionToRoute('...')
の直後に呼び出すと、ユーザーは常にこの時点でサインインしていないため、再度ログイン ページにリダイレクトされます。そして、私が試してみると:
App.Auth.on('signInSuccess', function() {
// ...
});
次に、ルーターにアクセスして移行を行う賢明な方法がありません。どんな明るいアイデアでも大歓迎です。ありがとう!