javascript - 当我使用 <script src "NetworkError"> 时,为什么我在 javascript 中没有得到 ="false_ip"?

标签 javascript src onerror

这是我的简单脚本,

<script>
window.onerror = err;

var script = document.createElement('script');
script.src = "192.186.1.1.1.1.1";
script.onerror = err;
document.body.appendChild(script);

function err(msg, loc, a, b) {
alert(msg + "/" + loc);
}

</script>

但是当我加载这个时,我得到了,

[object Event]/undefined

当我在“firebug”上运行相同的内容时,我收到详细的错误,例如,

NetworkError: 404 Not Found - http://localhost/XSS/192.186.1.1.1.1.1"

那么我怎样才能获得详细的错误。

try-catch alos 不起作用

try {

var script = document.createElement('script');
script.src = "192.186.1.1.1";
document.body.appendChild(script);

} catch(e) {
    alert(e.name);

} 

该方法仅适用于旧浏览器吗?

img.src 也不提供火灾错误处理程序。为什么?

var img = new Image();
 img.src="gifffff/asasa/ss" ;

最佳答案

Firebug 不是代码,而是代表代理运行的浏览器诊断工具。 (JavaScript无法读取firebug控制台的结果。)

现在,对于案例:

  • Image.error 事件从未说明加载失败的原因。 HTML 规范中没有规定包含“原因”;问题通过一开始就不是一个功能来解决。

  • catch 不起作用,因为代码没有抛出异常。

    图像仍然是图像,仍然可以添加到 DOM 无论资源(最终)是否加载失败。

    (src 仍然设置为有效的 URI 组件 - 它会在无效/未知的 URI 方案上引发异常。)

<小时/>

有了这个一般限制(在任何[图像]资源上,即使是同一来源)可以防止违反同源政策 - 以及恶意攻击的能力运行各种网络扫描攻击的代码。

关于javascript - 当我使用 &lt;script src "NetworkError"> 时,为什么我在 javascript 中没有得到 ="false_ip"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28435960/

相关文章:

javascript - 你最喜欢的 JavaScript/jQuery 代码编辑器是什么?

javascript - 在 src 属性中设置图像的 url 是否可以使图像在互联网上更改时发生更改

python - Selenium/Python2.7 查找具有相似 src 的元素?

javascript - 哪些 html 标签支持 onload/onerror javascript 事件属性?

javascript - React JS - 这个函数如何删除 JSON 数据?

javascript - forEach() 是否通过引用绑定(bind)?

javascript - 水平和其他定向滚动

php - img,空 src 对在 IE 中工作的 php 有影响吗?

javascript - 使用 window.onerror 获取实际的 Javascript Error 对象

reactjs - 如何在触发 onerror 时替换图像。 react js