寻找失踪的Javascript在网站包括

问题描述:

说我有几个的JavaScript包括在一个页面:寻找失踪的Javascript在网站包括

<script type="text/javascript" src="/js/script0.js"></script> 
<script type="text/javascript" src="/js/script1.js"></script> 
<script type="text/javascript" src="/js/script2.js"></script> 
<script type="text/javascript" src="/js/script3.js"></script> 
<script type="text/javascript" src="/js/script4.js"></script> 

有没有一种方法我可以告诉是否有这些均未发现(404),而不必手动检查每个一?我想我正在寻找一个在线工具或类似的东西。有任何想法吗?

如果你得到Firebug firefox插件并启用控制台,它应该告诉你何时在控制台中检索资源时出现错误。

+0

我会得到一个语法错误: 错误:语法错误 源文件:http://localhost/js/bad/filename/file.js 线:1个 源代码: SeanDowney 2008-09-11 18:37:30

+1

打开Firebug中的“Net”选项卡并启用它。比刷新。 – 2009-10-07 12:34:22

我没有使用其他浏览器足以知道在哪里可以找到类似的功能,但Safari有一个活动窗口显示给定网页的所有包含文件,以及哪些不能显示检索。

记录你的404's。

如果你想实时监控而不真正检查它是否存在,那么我建议在文件中放置动态变量。然后,只需做这样的事情:

var script0Exists = true; // inside script0.js 
var script1Exists = true; // inside script1.js 

然后在你的其他文件,只需使用:

if (script0Exists) { 
    // not a 404 - it exists 
} 

如果不想手动检查客户端上,你需要做的这台服务器-侧。您需要确保您使用的任何Web服务器都被配置为记录404s,然后检查该日志以查看哪些HTTP请求失败。

如果您的虚拟主机总是返回HTTP结果“200 OK”,文件是否存在(后者应该提供“404 Not Found”),浏览器无法判断它是否收到脚本。您可以尝试通过XMLHttpRequest检索文件,检查数据,如果它们看起来像JS,则可以eval()它们,或者创建一个指向您下载的完全相同的URL的脚本标记(如果脚本可缓存,它不会再被转移,因为浏览器已经拥有它)。