Creé un ActionFilterAttribute para mi API web para autorizar a las personas. Obtención de accessToken por RequestUri está bien, sin embargo, quiero enviarlo en los datos del formulario. Mientras se lee Request.Content en el método onActionExecuting de ActionFilterAttribute, el servidor siempre tiene un resultado vacío. ¿Como puedó resolver esté problema? El código es como la siguiente:Lectura de datos de formulario en ActionFilterAttribute
public class RequireAuthorization : ActionFilterAttribute
{
public override void OnActionExecuting(System.Web.Http.Controllers.HttpActionContext actionContext)
{
actionContext.Request.Content.ReadAsStringAsync().ContinueWith((t) =>
{
try
{
//query will result in empty string
string query = t.Result;
string UserID = HttpUtility.ParseQueryString(query).Get("UserID");
string accessToken = HttpUtility.ParseQueryString(query).Get("AccessToken");
UserRepository repository = new UserRepository();
repository.IsTokenValid(Convert.ToInt32(UserID), accessToken);
}
catch (Exception ex)
{
var response = new HttpResponseMessage
{
Content =
new StringContent("This token is not valid, please refresh token or obtain valid token!"),
StatusCode = HttpStatusCode.Unauthorized
};
throw new HttpResponseException(response);
}
});
base.OnActionExecuting(actionContext);
}
}
¿Ha encontrado la respuesta? Estoy teniendo el mismo problema – Ahmadreza