0

私は、このようなアピアクションメソッドを持っています。APIコントローラにAuthorize属性がある場合、角度ルーティングを使用して別のページにユーザーをリダイレクトする方法はありますか?

[Authorize(Roles = "Admin")] 
[HttpGet, Route("")] 
public List<TaskViewModel> GetAll() 
{ 
    return TasksRepository.SelectAll(Context); 
} 

と、いくつかのHTTPサービスを介してデータをフェッチするために、角使用。 このルーティング設定があります。

$routeProvider.when('/Tasks', { 
     title: 'Tasks', 
     controller: 'tCtrlr', 
     templateUrl: '../HTML/Tasks.html', 
    }) 

そのアプローチの問題は、私は彼がそのコンテンツを視聴するために許可されていないので、彼は空のデータを取得しているユーザーに通知傾けるということでしょうか? APIアクションにAuthorize属性があり、ユーザーがログインしている必要がありますか、ページの内容を表示できない場合は、メッセージを表示するか、別のページにリダイレクトしますか?

答えて

0

ステータスが401(無許可)であればあなたは「その後、私はかなりないんだけど、この

$http("api/yourAPI") 
.then(function (success) { ... } , 
function (error) { 
if (error.status==401) { 
// handle unauthorised 
} 
}); 

のようなものを試してみてくださいリダイレクションを扱うか、他

レスポンスヘッダ.. をチェックすることがあるでしょう構文の確認ができますが、Refrence より明確な構文の確認thisためのアイデア

編集を得たが、.ERR .successことに留意してください最新のバージョンでは推奨されていません。

関連する問題