我们有一个PHP服务,在那里我们抛出一个自定义的Exception对象(只是有一个消息属性)。这些在PHP中被捕获,然后我们执行以下操作:
header($_SERVER['SERVER_PROTOCOL'] . ' 400 Bad Request', true, 400);
这导致了两件事:
1) 如果他们的控制台在上,则出现控制台错误
2) 要调用的延迟对象上的error()回调和.fail()。
我们想要没有1副作用的2。如果我们将错误代码设置为200,则只调用success()和then()。
有什么中间地带我们可以利用吗?
更正,我的第一个答案是胡说八道。
if(!window.console) console = {log: function() {}};
这就是要走的路。在$.ajax
调用之前使用它(或者使用ajax请求)。