みなさん、こんにちは。
firebaseの簡易ログイン(facebook)でangularjsを使いたいです。しかし、認証共有サービスを作成する方法がわかりません。
私がやりたいことは
- 認証サービスを作成する
- この認証サービスを使用して、ユーザーがすべてのコントローラーにログインしているかどうかを確認します
- コントローラーは、
$location
ユーザーがログインしている/ログインしていない場合に実行します
私もangularjsは初めてですが、この状況でどのサービスを使用すればよいかわかりません。
service
またはfactory
?
以下のコードをAngular Serviceに配置して、ユーザーがログインしているかどうかを各コントローラーに伝えるにはどうすればよいですか?
var firebaseRef = new Firebase("https://test.firebaseio.com");
var auth = new FirebaseAuthClient(firebaseRef, function(error, user) {
if (user) {
console.log(user);
} else if (error) {
console.log(error);
} else {
console.log('user not login');
}
});
これが私が推測しているものです。コントローラーuser
からの戻り値が存在する場合は、ログインページにリダイレクトします。そうでない場合は、ログインボタンを含むログインダイアログを表示して、次のコードを呼び出しますauthService
authService.user
authService.login('facebook');
このようにできるか、またはもっと良い方法があるかどうか教えてください。