假设我有一个方法在我的控制器通过jQuery AJAX调用调用。例如。我想删除一个用户。当一切顺利时,我返回新的内容(‘ok’)并退出方法。
出现错误时应该怎么办?我想通过适当的状态代码来指示它,这样我的错误回调将被调用。为什么状态码?阅读:
How do you trigger the “error” callback in a jQuery AJAX call using ASP.NET MVC?
但是,该方法不工作,因为IIS7返回它自己的消息(错误请求)insted我的自定义错误消息。
除此之外,还有两个渔获:
>它必须与IIS6一起工作
> IE8不返回“错误请求”字符串。内部错误回调的属性request.responseTest为null。
错误回调可能如下所示:
error:function(request){alert(request.responseText);}
解决方法
设置Response.StatusCode是正确的事情。要修复IIS的“有用的”错误处理,请设置
HttpResponse.TrySkipIisCustomErrors属性。你可以阅读更多关于这个
here。