假设我在页面中包含多个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)而无需手动检查每一个?我想我正在寻找一个在线工具或类似的东西。有什么想法吗?
答案 0 :(得分:9)
如果您获得Firebug firefox插件并启用控制台,它应该告诉您何时在控制台中检索资源时出错。
答案 1 :(得分:2)
我没有足够的其他浏览器知道在哪里找到类似的功能,但Safari有一个 Activity 窗口,显示给定网页的所有包含文件以及哪些无法被检索。
答案 2 :(得分:2)
如果你想实时监控而不实际检查它是否存在,那么我建议在文件中放置动态变量。然后做这样的事情:
var script0Exists = true; // inside script0.js
var script1Exists = true; // inside script1.js
然后在您的其他文件中,只需使用:
if ( script0Exists ) {
// not a 404 - it exists
}
答案 3 :(得分:1)
记录你的404。
答案 4 :(得分:0)
如果您不想在客户端上手动检查,则需要在服务器端执行此操作。您需要确保将您使用的任何Web服务器配置为记录404,然后检查该日志以查看哪些HTTP请求失败。
答案 5 :(得分:0)
如果你的webhost总是返回HTTP结果“200 OK”,无论文件是否存在(后者应该给出“404 Not Found”),浏览器都无法告知它是否收到了脚本。
您可以尝试通过XMLHttpRequest检索文件,检查数据,如果它们看起来像JS,要么eval()它们,要么创建一个指向您下载的完全相同URL的脚本标记(如果脚本是可缓存的,那么它将不会再次传输,因为浏览器已经拥有它。)