【问题标题】:Find Missing Javascript Includes in Website查找网站中缺少的 Javascript 包含
【发布时间】:2010-09-08 14:32:02
【问题描述】:

假设我在一个页面中包含了几个 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) 而无需手动检查每个?我想我正在寻找一个在线工具或类似的东西。有什么想法吗?

【问题讨论】:

    标签: javascript include


    【解决方案1】:

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

    【讨论】:

    • 我会得到一个语法错误:错误:语法错误源文件:localhost/js/bad/filename/file.js 行:1 源代码:是 404,而是提醒我这个问题。这也出现在 Firefox 控制台中
    • 在 Firebug 中打开“Net”选项卡并启用它。比刷新。
    【解决方案2】:

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

    【讨论】:

      【解决方案3】:

      记录您的 404。

      【讨论】:

      • 这会起作用,除了我正在显示的网站是“找不到页面”而不是 404。所以我会为不存在的东西获得 200!
      • 您可以发送 404 标头,但仍然显示“找不到页面”消息。
      【解决方案4】:

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

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

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

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

      【讨论】:

        【解决方案5】:

        如果您不想在客户端手动检查它,则需要在服务器端执行此操作。您需要确保您使用的任何网络服务器都配置为记录 404,然后检查该日志以查看哪些 HTTP 请求失败。

        【讨论】:

          【解决方案6】:

          如果您的网络主机总是返回 HTTP 结果“200 OK”,无论文件是否存在(后者应该给出“404 Not Found”),浏览器无法判断它是否收到了脚本。

          您可以尝试通过 XMLHttpRequest 检索文件,检查数据,如果它们看起来像 JS,则 eval() 或者创建一个指向您下载的完全相同 URL 的脚本标记(如果脚本是可缓存的,它不会再传输了,因为浏览器已经有了)。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 2020-03-07
            • 2018-08-01
            • 1970-01-01
            • 1970-01-01
            • 2014-07-20
            • 1970-01-01
            • 2016-09-08
            • 2021-03-20
            相关资源
            最近更新 更多