Pet*_*ens 13 javascript firefox google-chrome http httprequest
是否有可能使浏览器发送到服务器的http请求失败而不必更改javascript?
我有一个POST请求,我的网站正在发送到服务器,我们正在尝试测试我们的代码在请求失败时的反应(例如HTTP 500响应).不幸的是,我需要对其进行测试的环境具有uglified和压缩的javascript,因此插入断点或更改javascript不是一种选择.有没有办法让我们利用任何浏览器来模拟失败的请求?
该请求需要很长时间才能完成,因此使用浏览器控制台运行javascript命令是可能的.
我已经尝试使用window.stop(),但是,这不起作用,因为我需要执行失败的代码.
我知道设置代理服务器的选项,但希望避免这种情况.
小智 19
在Chrome中(刚刚检查过v63),您实际上可以从"网络"标签中阻止特定的网址(甚至是整个网域).您只需右键单击该条目并选择Block request URL(或Block request domain.)
不要忽视最简单的解决方案:断开计算机与 Internet 的连接,然后触发 AJAX 调用。
一种可能的解决方案是修改将由浏览器使用的XMLHttpRequest对象.在javascript控制台中运行此代码将导致页面上所有未来的AJAX调用被重定向到不同的URL(这可能会产生404错误):
XMLHttpRequest.prototype._old_open =
XMLHttpRequest.prototype._old_open || XMLHttpRequest.prototype.open;
XMLHttpRequest.prototype.open = function(method, url, async, user, pass) {
return XMLHttpRequest.prototype._old_open.call(
this, method, 'TEST-'+url, async, user, pass);
};
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10224 次 |
| 最近记录: |