当web api中的validatemode失败时,返回警报消息

Return alert message when fail validatemodel in web api

本文关键字:返回 消息 失败 web api 中的 validatemode      更新时间:2023-09-26

我有一个asp.net web api的验证模型属性,我使用jquery ajax调用来执行web api调用。但是,当我的ajax调用失败时,ajax错误不会返回任何成功或失败的消息。

public class ValidationActionFilter : ActionFilterAttribute
{
    public override void OnActionExecuting(HttpActionContext actionContext)
    {
        var modelState = actionContext.ModelState;
        if (!modelState.IsValid) {
            actionContext.Response = actionContext.Request
                 .CreateErrorResponse(HttpStatusCode.BadRequest, modelState);
        }
    }
} 

$.ajax({
  ...,
  success: function() {
    alert('success');
  },
  error: function() {
    alert('fail');
  }
});

要将响应输入donefail方法,只需执行以下操作:

$.ajax( "your ajax object" )
  .done(function(data) {
    alert(data);
  })
  .fail(function(error) {
    alert(error);
  });

当您将参数传递到回调(donefail)中时,您正在捕获响应。因此,如果您点击API获取字符串数组,并且成功,那么该数组将位于data中。