2017-01-20 16 views
0

私はAngularJS 1.x.xアプリケーションでAuth0を使用しています。AngularJSコントローラでユーザーが認証されているかどうかを確認するにはどうすればいいですか?

アプリを設定する方法は、div ng-if="isAuthenticated"を使用して、divのテンプレートを表示(非表示)することです。しかし、ユーザーが認証されていない場合は、私のコントローラーでAPI呼び出しを防ぐことができるようにしたい。これらの呼び出しをブロックする正しい構文は何ですか?

は、私は私のようなものを探していると思う:

if (isAuthenticated) { 
     ServerRequest.getAllPatients({ 
     }).then(function(resp){ 
     $scope.myTestData = resp 
     }).catch(function(err){ 
     console.log(err); 
     }); 
    } else { alert("you are not logged in") } 

答えて

0

それは、正確な要件に依存するが、一般的には、ユーザーが認証されているかどうかを追跡し続ける角度サービスを持っているでしょうし、あなたが注入このサービスは、認証ステータスに基づいて条件付きロジックを適用する必要がある場合はいつでも使用できます。

もう1つの可能性は、ルートが認証されたユーザーを必要とし、そのルートがない場合は、特定のルートへのナビゲーションを完全に拒否することです。あなたはいくつかのガイダンス(Deal with users authentication in an AngularJS web app)についてこの記事をチェックすることができます。

関連する問題