0

phonegap を使用して Web アプリを作成したいのですが (Android エミュレーターで試しています)、「同じドメイン ポリシー」に問題があります。この制限を無効にする方法はありますか。外部サーバーから html/json データをロードする必要があります (自分のサーバーではないため変更できません) が、データを取得しようとすると JQuery が未定義のオブジェクトを返します。これが私のコードです:

index.html

<!DOCTYPE html>
<html>
    <head>
        <meta charset="ISO-8859-1">
        <title>Title</title>
        <script type="text/javascript" src="js/jquery.min.js"></script>
        <script type="text/javascript">
            $.ajaxSetup ({
                cache: false
            });
            var ajax_load = "<img src='img/load.gif' alt='loading...' />";
            var jsonUrl = "external url";
                $("#result").html(ajax_load);
                $.getJSON(jsonUrl, function(json) {
                    var result = json.responseData;
                    $("#data").html("Result: " + result);
                });
        </script>
    </head>
    <body>
        <div id="data"></div>
    </body>
</html>

PhoneGapTestActivity

public class PhoneGapTestActivity extends DroidGap {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        super.loadUrl("file:///android_asset/www/index.html");
    }
}

オンラインで検索して他の質問を読んで、 phonegap.xmlファイルにホワイトリストを設定しようとしました

<?xml version="1.0" encoding="UTF-8"?>
<phonegap>
    <access origin="*" subdomains="true" />
</phonegap>

しかし、私が得たのは「結果:未定義」です。どうもありがとう!

編集:何度も試行した後、リクエストが機能することに気付きました (データを受信しました)、json データの内容にアクセスする際にいくつかの問題がありましたが、今では機能します!. すべての回答に感謝します。

4

3 に答える 3

0

これを試してみてください..この場合は機能するかどうかわかりませんが、私には機能します。

<?xml version="1.0" encoding="utf-8"?>
<phonegap>
<access origin="http://127.0.0.1*"/>
<log level="DEBUG"/>
</phonegap>

于 2012-05-17T07:14:13.487 に答える
0

機能しない理由はありません。私は jQuery の熱烈なユーザーではありませんが、CORS を有効にするために設定できることがいくつかあります。

CORS POST リクエストはプレーンな JavaScript から機能しますが、jQuery では機能しないのはなぜですか?

于 2012-05-15T17:19:08.937 に答える
0

何度も試行した後、リクエストが機能する (データを受信した) ことに気付きましたが、json データ コンテンツにアクセスする際にいくつかの問題がありました。

于 2012-12-03T19:19:57.370 に答える