【发布时间】:2015-12-23 17:00:52
【问题描述】:
我正在尝试了解源映射的工作原理。我使用 nodejs 创建了一个带有一个页面的简单 Web 服务器。安装了带有缩小版本和源映射的 jQuery。然后我在我的网页上放了一个脚本标签,包括缩小版的 jQuery。多亏了源映射,我现在可以在 chrome 开发人员工具中浏览未缩小的代码。但是怎么做呢?
我分析从服务器发送的东西,源地图没有传输。它们未显示在 chrome 开发人员工具的网络选项卡中,也不包含在缩小的 jquery 文件的下载内容中。唯一的就是//# sourceMappingURL=jquery.min.map 在缩小的 jQuery 文件的末尾。浏览器如何访问它们?
部分原因是我想知道,因为在我的工作中我正在创建一个应用程序,如果能够在生产中使用源映射跟踪错误,那就太好了。但现在看来,如果我想允许,这也意味着任何访问该站点的人都可以获得未缩小的代码。这是正确的还是我可以控制源映射如何从服务器传输到客户端?
编辑: 感谢您的回答。我自己也做了更多的研究,记录服务器收到的每个请求。如果使用调试器工具,则源映射是在缩小文件末尾指定的 url 处的请求。 chrome 隐藏了这一点的事实使事情变得非常混乱。如果我阻止传输源映射,源映射将不起作用,但 chrome 也会缓存源映射。 IE。如果我允许源映射,查看它,然后阻止它并再次查看源映射可能仍然有效。
【问题讨论】: