2011-12-13 22 views
1

にPhoneGapのとjQueryを使用してJSONの結果を取得できません:は現在、私はこのコードを使用してiPhoneアプリ

<script type="text/javascript"> 

    $(document).ready(function() { 
    var url = "http://openexchangerates.org/latest.json"; 
    $.getJSON(url + "?callback=?", null,function(data) { 

     var currencies = [ "USD", "EUR", "JPY", "GBP", "CHF", "AUD", "CAD", "EUR", "SEK", "HKD", "NOK", "NZD", "MXN", "SGD", "KRW", "RON", "BGN", "RUB", "PLN", "DKK" ]; 
     var myElementToAppendTo = $("#content"); 

     $.each(data.rates, function(key, value) { 
     value2 = 1/value; 
     valueForEuro = value; 
     value = accounting.formatMoney(value, "", 4, ",", "."); 
     value2 = accounting.formatMoney(value2, "$", 4, ",", "."); 

     euro = data.rates.EUR; 
     value3 = valueForEuro/euro; 
     value4 = 1/value3; 
     value3 = accounting.formatMoney(value3, "", 4, ",", "."); 
     value4 = accounting.formatMoney(value4, "&euro;", 4, ",", "."); 

      if(jQuery.inArray(key,currencies) > -1) { 
       myElementToAppendTo.append('<div class="currencyBox"><div class="currency">'+key+'</div><div class="tab1"><div class="half">'+value+'</div><div class="half">'+value3+'</div></div><div class="tab2"><div class="half">1 '+key+' = '+value2+' </div><div class="half">1 '+key+' = '+value4+' </div></div></div>'); 
      } 
     }); 

    }); 
    }); 


</script> 

それは、任意のブラウザ/ローカルサーバー上で動作しますが、私はビルド時にiPhoneがJSONの結果が表示されませんアプリ。なぜどんなアイデア?

+0

あなたのplistでopenexchangerates.orgをホワイトリストに追加しましたか? –

+0

どうすればいいですか? – Andrei

+0

以下に述べるように、phonegap.plist – sirmdawg

答えて

4

接続先のサーバーをホワイトリストに登録する必要があります(これにはワイルドカードも使用できます)。 これはPhoneGap.plistファイルで行われます。 Phonegapから:

また、最新のコードには新しいホワイトリスト機能があります。 が外部ホストを参照している場合は、 "ExternalHosts"キーの下に PhoneGap.plistにホストを追加する必要があります。ワイルドカードは大丈夫です。したがって、 "http://phonegap.com"に接続している場合は、リストに "phonegap.com"を追加するか、 もサブドメインに一致するワイルドカード "* .phonegap.com"を使用する必要があります) 。

0

これが役立つかどうかわかりませんが、Googleフィードプラグインを使用してしまったのは、この同じ問題が発生したときにずっと簡単だったためです。 w/oをするために多くのフープを飛び越えなければならなかった。

リンク:http://jquery.malsup.com/gfeed/

そうしないと、あなたのplistを変更する必要があります...

のPhoneGapを許容することができるかどうか確認するために 'ExternalHosts' と呼ばれる設定を読み込みます。

公開phonegap.plist - キーがそこにあり、あなたのドメインに新しいものを追加する必要があります。

+0

フィードの性質上、JSONを維持する必要があります。 – Andrei

関連する問題