내 웹 API의 일부 동작 전에 뭔가를하고 싶습니다. 오류를 던지는 것처럼 ...웹 API 2에서 조치를 취하기 전에 수행하십시오.
public class OnlyAuthorized : ActionFilterAttribute
{
public override void OnActionExecuted(HttpActionExecutedContext actionExecutedContext)
{
if (!IsValidAuthorization(actionExecutedContext.Request.Headers.Authorization?.Parameter))
{
throw new HttpResponseException(HttpStatusCode.Unauthorized);
}
actionExecutedContext.Response?.Headers.Add("Access-Control-Allow-Origin", "*");
base.OnActionExecuted(actionExecutedContext);
}
public bool IsValidAuthorization(string token)
{
return token != null;
}
}
그러나 이전의 동작 대신 실행 된 것입니다. 때때로 액션 논리는 때때로 도달되지만, 요청은 액션을 실행할 권한이 없습니다.
어떻게하면됩니까?
속성을 사용하여이 작업을 수행 할 수없는 경우 모든 POST 요청을 가로 챌 수있는 솔루션을 처리 할 수 있다고 생각합니다.