私はいくつかのAPIアクションを持っています。これは、OnMethodBoundaryAspectのアスペクトを含んでいます。 私はこのようなリクエストで送信されたトークンの検証を行います。ポストシャープで不正な結果を返します。OnMethodBoundaryAspect
[Serializable]
[MulticastAttributeUsage(MulticastTargets.Method, TargetMemberAttributes = MulticastAttributes.Instance)]
public class TokenCallHandler : OnMethodBoundaryAspect
{
/// <summary>
/// Methodo responsável por validar o token enviado pelo usuário
/// </summary>
/// <param name="args"></param>
public override void OnEntry(MethodExecutionArgs args)
{
ApiController apiController = (ApiController)args.Instance;
var context = apiController.ControllerContext;
HttpRequestHeaders headers = context.Request.Headers;
bool validToken = false;
if (headers.Contains("X-Authorization"))
{
var authorization = headers.GetValues("X-Authorization");
var token = authorization.ToList().FirstOrDefault();
if (token == null)
token = "invalid";
validToken = TokenUtil.ValidateToken(token);
}
if (!validToken)
args.ReturnValue = new UnauthorizedAccessException();
}
}
しかし、それはAPIでメソッドを実行し続ける、私は401例外を返したいと思います。私はそれがその中に不正に500(内部サーバーエラー)を返す新しいUnauthorizedExceptionを投げるんが、私は必要な場合
私はwep.apiアクションでキャプチャすることができますどのように側面が返さ?