2017-07-31 9 views
0

私はMiddlereを書いています。パスが認証を必要としないときに実行しないようにします。 ASP.NETコアでこれを簡単に知ることは可能ですか? (イントロスペクションでコントローラ機能の属性を読み取る必要はありません)特定のルート/パスに許可/認証が必要かどうかを判断するにはどうすればよいですか?

ありがとうございました。

+0

認証フレームワークに統合しようとしましたか? Authミドルウェアを登録し、フレームワークはコントローラの属性などを処理します。 – Tratcher

答えて

0

ミドルウェアのPublic Task Invokeメソッドでは、パイプラインの次のレベルに進むかどうかのチェックをいつでも行うことができます。例えば

public Task Invoke(HttpContext context) 
{ 

    // If the request path doesn't match, skip 
    if (!context.Request.Path.Equals(_options.Path, StringComparison.Ordinal)) 
    { 
     return _next(context); 
    } 
} 

return_nextを(コンテキスト)は単にパイプラインの次のステージに完全このミドルウェアをスキップします。あなたは何をしようとしているかに応じてここにカスタムロジックを置くことができます。

関連する問題