我尝试使用Service Worker检测图片的404错误。 有没有一种方法可以获取图片获取的状态码?
self.addEventListener('fetch', function(event) {
console.log('Handling fetch event for %s', event.request.url);
event.respondWith(
fetch(event.request).then(function(response) {
if (response.status == 200) {
return response;
}
else {
/* return some default image */
}
})
);
});
这段代码在处理html文件时表现良好,但当它获取图片时,状态码始终为0。有没有办法获取图像的状态码?为了让示例更简单,我移除了缓存和其他一切。
这是我尝试加载的示例页面:
<body>
<!-- This image is working -->
<img src="http://www.google.ca/images/srpr/logo11w.png">
<!-- This image returns 404 -->
<img src="http://www.google.ca/images/srpr/00000.png">
</body>
所以HTML页面本身的状态为200,但两个图像的状态都为0。