我有一个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');
}
});

答案 0 :(得分:1)
要获得done
和fail
方法的回复,只需执行以下操作:
$.ajax( "your ajax object" )
.done(function(data) {
alert(data);
})
.fail(function(error) {
alert(error);
});
将参数传递给回调(done
,fail
)时,您正在捕获响应。因此,如果您点击API获取字符串数组,并且成功,则数组将位于data
内。