是否可以在前端处理http头信息?(使用JavaScript)
我在搜索如何检测img文件时未找到(404…或50x) 所以我确实弄明白了什么是img文件,就像下面的步骤是否可以在前端处理http头信息?(使用JavaScript),javascript,html,http-headers,frontend,performance-testing,Javascript,Html,Http Headers,Frontend,Performance Testing,我在搜索如何检测img文件时未找到(404…或50x) 所以我确实弄明白了什么是img文件,就像下面的步骤 解析html和css代码,然后捕获URL 临时生成img标记,分配src=URI 检查属性(宽度、高度),如果它是0值,将找不到它 最后,我想捕捉远程地址,如果是这样的话,我可以找出服务器有问题 所以我想,若我能在前端处理http头,那个就太棒了 我也考虑过使用Ajax,但它需要额外的运行时间, 然后可能会使web性能变差 所以! 简言之,这是我真正的问题。 是否可以在前端处理http头信
!![如何处理此数据?(状态、远程地址等…)][1]否,无法从HTTP标头检索IP地址。原因是,远程地址不是HTTP请求或响应头的一部分。您唯一的选择是向DNS解析API发出ajax请求,并使用该请求将主机名解析为IP地址。下面是一个示例,使用:
函数hostToIp(主机,回调){
函数onComplete(){
var res=JSON.parse(this.responseText);
var ip=res.answer[0].rdata;
回拨(ip);
}
var oReq=新的XMLHttpRequest();
oReq.onload=未完成;
oReq.open(“获取”http://api.statdns.com/“+host+”/a”,正确);
oReq.send();
}
控制台时间(“解析ip”);
hostToIp('google.com',函数(res){
文件编写(res);
console.timeEnd(“解析ip”);
});代码>图像有错误事件,无需侧向加载。并且0不是缺少的img的宽度。顺便说一句…感谢您的快速评论!是的,但最终目的是检测服务器有问题,所以我需要它。。。实际上,它不需要只是一个img文件,任何来自web服务器的资源都可以。这只是一个例子。(img)主要问题是如何处理http标头数据。您可以使用HEAD请求来获取标头,但我不知道如何处理。为什么需要标头;img.src将显示服务器的地址,即使在重新定向后也是如此。例如,当我们使用“youtube.com”时,会收到许多资源(html、css、视频剪辑、img等),但是,每次进入“youtube.com”时,服务器的ip地址都不同。。有时,ip地址将是1.1.1.1,有时,将是2.2.2.2。。。并且引用的资源也有不同的服务器ip。所以,包含远程地址的http头可以区分“img.src”并不总是有ip地址。有时,它像“www.foo.com/img/blah/blah2”,有时像“0.0.0.0/blah/blah2”,所以我需要来自http headergreat的远程地址!这几乎是我想要的,但是,我想检查每个资源的地址。这似乎只适用于主机,如google.com或youtube.com等。。也有可能吗?比如“http:/www.google.com/images/A.png”?是的。只需首先从URL中提取主机名。看这里-完美!谢谢!如果我的答案对你有效,请将其标记为正确。哦,很抱歉忘记了。谢谢。