3

編集: JQuery Mobile + Phonegap AJAX の問題の解決策:

subdomains="true"config.xml のプロパティはphonegap 2.9.0では機能しません。サブドメインへのすべてのリクエストは 200 を返しますが、$.ajax は成功関数を起動しません (そして $.getJSON はとにかく起動しません)。*.domain.tldまた:公式ドキュメントに記載されている構文が機能していません。その問題を解決する唯一の方法は次のとおりです。アクセス元とアクセス権を"*"(すべて)に設定する

<access origin="*"/>
<access uri="*"/>

jQuery Mobile Framework と Phonegap を使用してモバイル アプリケーションを開発しています。Web サーバーからデータを取得するために使用するアプリケーションに AJAX リクエストを追加しました。ページは正しく読み込まれていますが、Android (4.1.2) は AJAX イベントを発生させたり、Web サーバーからリクエストを取得したりしません。実際には、読み込みスピナーにかかっているだけです。

これについて奇妙なことは、私はすでに完全に正常に動作する同じサーバー (ただし異なるドメイン) への AJAX 要求を使用していることです。

$.getJSON("[...]checkupdate.php?callback=?", function(data){    
   [...]    
})

$.getJSON でも 2 番目のリクエストを実行しようとしましたが、コンピューターでは機能しましたが、Android では失敗しました。解決策を探し始めたところ、 $.ajax でキャッシュを false に設定すると役立つことがわかったので、コードを書き直しましたが、まだ機能していません。

$.ajax({
cache : false,
type: 'GET',
url: requestURL,
dataType: 'jsonp',
context: document.body,
success: function(data){
    [...]
}});

これを機能させるために他に何かすることはありますか?

4

1 に答える 1

0

その問題を解決する方法を見つけました。subdomains="true"phonegap の config.xmlのプロパティが機能していないことに気付きました。(フォンギャップ 2.9.0)。サブドメインへのすべてのリクエストはステータス 200 を返しますが$.ajax、success 関数は起動し$.getJSONません (とにかく起動しません)。公式ドキュメントに記載されている構文*.domain.tldも機能しません。その問題を解決するために見つけた唯一の方法は、アクセス元とアクセス権を"*"(すべて)に設定することでした

于 2013-08-13T05:48:39.020 に答える