jQuery的jquery-1.10.2.min.map触发404(Not Found)

我看到有关文件min.map错误消息,找不到:

GET jQuery的jquery-1.10.2.min.map触发一个404(Not Found)


截图

在这里输入图像描述

这是从哪里来的?

如果Chrome DevTools报告.map文件(可能是jquery-1.10.2.min.mapjquery.min.mapjquery-2.0.3.min.map ,但可以与任何事情发生) jquery-2.0.3.min.map ,首先要知道这是仅在使用DevTools时才需要的。 你的用户不会打这个404。

现在你可以修复这个问题或者禁用sourcemapfunction。

修复:获取文件

接下来,这是一个简单的修复。 前往http://jquery.com/download/并点击;下载您的版本的地图文件链接,并且您还需要下载解压缩的文件。

在这里输入图像描述

有了地图文件,您可以通过原始资源debugging您的缩小jQuery,如果您不喜欢处理像ac这样avariables名称,这将节省大量时间和沮丧。

关于源代码的更多信息: JavaScript源代码地图介绍

道奇:禁用源代码

您可以不用获取文件,而是在您的设置中完全禁用JavaScript源代码地图。 如果您从未打算在此页面上debuggingJavaScript,那么这是一个不错的select。 使用DevTools右下方的cog图标打开设置,然后: 在这里输入图像描述

您可以通过删除行来删除404

 //@ sourceMappingURL=jquery-1.10.2.min.map 

从你的jQuery文件的顶部。

jQuery文件的顶部将如下所示。

 /*! jQuery v1.10.2 | (c) 2005, 2013 jQuery Foundation, Inc. | jquery.org/license //@ sourceMappingURL=jquery-1.10.2.min.map */ 

把它改成

 /*! jQuery v1.10.2 | (c) 2005, 2013 jQuery Foundation, Inc. | jquery.org/license */ 

源地图的用途

基本上,这是一种将组合/缩小文件映射回未构build状态的方法。 当您为生产而构build时,同时缩小和组合您的JavaScript文件,您将生成一个包含原始文件信息的源地图。 当您在生成的JavaScript中查询某一行和列号时,您可以在返回原始位置的源地图中进行查找。 开发人员工具(目前WebKit每晚构build,Google Chrome或Firefox 23+)可以自动parsing源映射,并使其看起来好像运行的是未logging的和未组合的文件。 (在这里阅读更多)

正如它在jQuery 1.11.0/2.1.0 Beta 2 Released源代码评论将被删除,所以这个问题不会出现在新版本的jQuery

这里是官方公告:

我们在这个testing版中做出的一个变化就是删除源代码评论。 源代码已经被certificate是一个非常棘手的问题,令开发者感到困惑,在StackOverflow这样的论坛上产生了很多混乱的问题,导致用户认为jQuery本身已经被破坏了。

无论如何,如果你需要使用源地图,它仍然可用:

我们仍将生成和分发源地图,但是如果浏览器不支持手动关联地图文件(目前没有),则需要在缩小文件末尾添加相应的源地图注释。 如果使用自定义构build过程生成自己的jQuery文件,则源代码注释将出现在缩小文件中,并生成地图; 你可以把它放在里面,使用源代码或编辑它,完全忽略地图文件。

在这里您可以find有关更改的更多细节。


在这里你可以find确认,与jQuery 1.11.0/2.1.0 Released在缩小文件中的源映射评论被删除。

  1. 下载地图文件和jQuery的未压缩版本。 把他们的缩小版本: JavaScript的

  2. 在您的HTML中包含缩小版本: HTML

  3. 登入Google Chrome浏览器: 谷歌浏览器

  4. 阅读JavaScript源地图简介

  5. 熟悉debuggingJavaScript

新版本的jQuery需要这个文件http://code.jquery.com/jquery-1.10.2.min.map

这个文件的可用性在这里描述http://www.html5rocks.com/en/tutorials/developertools/sourcemaps/

更新:

jQuery 1.11.0 / 2.1.0

// sourceMappingURL注释不包含在压缩文件中

据我所知,浏览器,至less铬,它不会默认禁用源映射。 这意味着您的应用程序的用户将默认触发此源映射请求。

您可以通过从JavaScript文件中删除//@ sourceMappingURL=jquery.min.map来删除源映射。

在按照其他答案中的说明之后,我需要从地图文件中去除版本,以便为我工作。

例如:重命名

jquery-1.9.1.min.map

jquery.min.map

如果你想获得源文件地图文件不同的版本,你可以使用这个链接http://code.jquery.com/jquery-x.xx.x.min.map

相反,x.xx.x把你的版本号。

注意:你得到的这个方法的一些链接可能会被破坏:)

我被提出了同样的问题。 我的原因是Grunt连接我的JavaScript文件。

我正在使用;\n作为分隔符,导致源地图的path为404。

所以开发工具正在寻找jquery.min.map; 而不是jquery.min.map

我知道这不是原来的问题的答案,但我相信也有其他人有一个类似的Gruntconfiguration。

jQuery 1.11.0 / 2.1.0 // sourceMappingURL注释不包含在压缩文件中。

假设您已经检查过文件实际上存在于服务器上,这也可能是由您的Web服务器限制提供哪种文件types造成的:

  • 在Apache中,如果使用mod_rewrite,可以使用<FilesMatch>指令或RewriteRule来完成。
  • 在IIS中,您需要查看Web.config文件 。