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
        });

async = falseに設定しようとしましたが、「制限付きURIへのアクセスが拒否されました」というエラーが発生します。これはセキュリティ機能です。インターネットにアクセスせずにオフラインで動作するデモが本当に必要であり、それを使用する人々がWebサーバーをインストールする必要がないことを望んでいます。また、データは変更される可能性があるため、すべてのデータを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の現在のディレクトリに移動することです。

この場合、async=falseでAJAXを使用できます。

于 2012-05-25T20:29:11.953 に答える