18

我想调试生产网站,但我不想在服务器上上传地图文件(出于隐私原因,因为它是公共权利?)。

可能吗 ?

4

3 回答 3

17

我不相信任何浏览器目前允许从本地文件按需加载源地图,所以你必须以某种方式将源地图放到网上。

一种解决方案可能是创建一个 .htaccess 文件(或类似的文件,如果您不使用 Apache),它将对源映射(和原始源文件)的访问限制为非本地网络的客户端。

但是您应该意识到,如果您出于安全原因想要阻止对源地图的访问,那么您将获得的只是一种错误的安全感。Javascript 是公开的,即使它被缩小和加密,也很容易解密它。不要在您的 javascript 中放置任何敏感数据即使您缩小和加密它也不会。

于 2013-04-02T16:53:13.507 回答
5

以下可能对您有用

多级源地图- CSS Ninja

该链接还解释了使用UglifyJS2可以指定输入源映射。但是,我没有使用本地输入源进行测试

此外,您可以尝试在本地托管文件并将文件更改为hosts指向. 然后指定为 Source Rootlocal.mydomain.comlocalhostlocal.mydomain.com/js/my-orig-js-file.js

于 2013-04-08T04:20:15.573 回答
0

另一种解决方案是将地图文件和缩小的js上传到服务器上,并将原始js文件保存在本地。然后像这样修改你的地图文件:

{
    "version":3,
    "sources":["http://localhost/library.js"],
    "names":["example","console","log"],
    "mappings":"AAAA,QAASA,YACRC,QAAQC,IAAI","file":"script.min.js"
}
于 2016-08-30T11:26:13.223 回答