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.map
, jquery.min.map
或jquery-2.0.3.min.map
,但可以与任何事情发生) jquery-2.0.3.min.map
,首先要知道这是仅在使用DevTools时才需要的。 你的用户不会打这个404。
现在你可以修复这个问题或者禁用sourcemapfunction。
修复:获取文件
接下来,这是一个简单的修复。 前往http://jquery.com/download/并点击;下载您的版本的地图文件链接,并且您还需要下载解压缩的文件。
有了地图文件,您可以通过原始资源debugging您的缩小jQuery,如果您不喜欢处理像a
和c
这样a
variables名称,这将节省大量时间和沮丧。
关于源代码的更多信息: 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
在缩小文件中的源映射评论被删除。
-
下载地图文件和jQuery的未压缩版本。 把他们的缩小版本:
-
在您的HTML中包含缩小版本:
-
登入Google Chrome浏览器:
-
阅读JavaScript源地图简介
-
熟悉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文件 。