javascript - 在 `onload` 事件中查找图像的 HTTP 状态代码

标签 javascript

<分区>

假设如下代码:

var img = new Image(1, 1);
img.onload = function() {
    console.log(arguments);
};
img.src = 'some.place.com/some/image.jpg';

当图像加载时,它会打印 arguments,其中包含一个 Event 对象,其中包含有关请求事件的信息,但我无法在任何地方找到状态代码。

onload 事件的触发不会区分直接成功的请求或成功的任何其他请求,例如重定向。

我需要在我的代码中区分此请求是直接请求还是重定向请求,但如果没有 HTTP 状态代码,我无法确定如何区分。有什么地方可以提供这些信息吗?

最佳答案

在 JavaScript 中无法获取图像元素发出的请求的 HTTP 状态,您需要使用 AJAX 作为加载器才能访问此类信息。

或者,您可以使用 img.complete:

HTMLImageElement.complete Returns a Boolean that is true if the browser has fetched the image, and it is in a supported image type that was decoded without errors.1

关于javascript - 在 `onload` 事件中查找图像的 HTTP 状态代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30947721/

相关文章:

javascript - 我们可以使用phonegap 在 HTML5 和 javascript 中访问 Android 设备的 native 内容,例如联系人列表、相机图片等吗?

javascript - 从 $.(ajax) 获取单选按钮值并将其传递到 SQL 查询中

javascript - 从 ul 中删除 li jQuery

javascript - 如何从 React 中的事件对象访问自定义属性?

javascript - 在 javascript 中下载带有 REST 请求的 zip 文件夹。 react .js

javascript - 如何使实时源列表仅在事件选项卡上更新或在选项卡再次变为事件状态时更新?

javascript - "Ember Simple Auth"来自组件的无效 session

javascript - 如何在Javascript中将md5和编码为base64

javascript - 使用表单发布发送另一个选择值作为参数

javascript - 强制 <table> 列为固定宽度;防止自动展开