2

有没有办法使用 about:config 配置 firefox 以允许本地文件访问(用于演示目的)?

特别是使用FF12,我需要能够对json数据进行本地文件访问。它在服务器上运行良好,但我想让这个演示更便携。

        $.ajax({
            url: "../_assets/levelschema.json",
            complete: function (data) {
                Levels = data.levels;
                //...
            },
            success: function (data) {                    
                // wont get called b/c files don't have 200 HTTP status
            },
            async: false
        });

我尝试将其设置为 not async=false,但出现“拒绝访问受限 URI”错误。这是一项安全功能。我真的需要演示离线工作,没有互联网访问,我希望使用它的人不必安装网络服务器。我也不想将我的所有数据都嵌入到 HTML 标记中,因为该数据可能会发生变化。

4

3 回答 3

5

您可以在 中翻转security.fileuri.strict_origin_policy首选项about:config。但这会带来一些安全漏洞;将您的 JSON 移动到 HTML 所在目录的子目录中是一个更好的主意。

于 2012-05-26T02:16:07.997 回答
1

如果 JSON 文件在您的本地计算机上,请像这样访问它:

<script type="text/javascript" src="myFile.json"></script>

您必须将该行添加到您的离线项目并在它上线时将其删除,但这是在没有任何服务器端帮助的情况下完成此操作的最佳方式。您还必须删除演示的 AJAX 代码,因为它无法在您的本地计算机上运行。

于 2012-05-25T20:08:29.563 回答
1

好的,只要您的数据文件位于原始 HTML 文件的路径下,使用 AJAX 的 JSON 请求就可以正常工作。所以我试图升级到 _assets/ 目录。解决方案是将 _assets 移动到 HTML 当前目录以供访问。

在这种情况下,您可以将 AJAX 与 async=false 一起使用。

于 2012-05-25T20:29:11.953 回答