0

jquerymobile を使用して phonegap でラップしています。AJAX を使用してサーバーからデータを取得していますが、ブラウザーでは完全に動作しますが、phonegap アプリケーションを使用して実行しようとすると、ajax 呼び出しが機能しないようです。AJAX 呼び出しでは、コード行「file_get_contents」を使用して、サーバーからデータを取得するローカル php ファイルを呼び出しています。私の phonegap バージョンは 2.0.0 です。また、サーバー URL を使用して res\config.xml ファイルにアクセス タグを追加しようとしましたが、アプリケーションでインターネット接続を許可しました。

ありがとうございました

これは私が使用している ajax コードです。サーバーに直接 URL を指定すると ajax 呼び出しが失敗し、(サーバーにない) ローカルの php ファイルに URL を指定すると、データを取得しますサーバー、ajax 呼び出しの成功。

$.ajax({ url : url + クエリ、dataType : 'html'、success : 関数 (応答) {

        $.mobile.loading('hide');

        $('body').append(response);

        $.mobile.changePage('#page3');
    },
    error    : function () {           
        alert('loading error') ;
        $.mobile.loading('hide');
    }
});
4

2 に答える 2

1

サーバーがホワイトリストに登録されていることを確認してください (ローカルであっても)。詳細はこちら: http://docs.phonegap.com/en/2.2.0/guide_whitelist_index.md.html#Domain%20Whitelist%20Guide

「*」を追加するだけで、すべての URL をホワイトリストに登録できます。また、相対 URL ではなく、絶対 URL からファイルを参照するようにしてください。

于 2012-12-13T21:09:14.650 に答える
0

また、「ローカル php ファイル」と言うとき、ローカル サーバー上のファイルを指していますか、それとも同じファイル ディレクトリにあるファイルを指していますか? PhoneGap は、PhoneGap アプリケーション内のディレクトリ構造内の PHP ファイルを処理しません。PHP ファイルは、PHP を処理できる Web サーバー上に存在する必要があります。

于 2012-12-13T21:11:53.103 に答える