2016-06-30 4 views
0

クロスドメインJSONデータの取得に関するいくつかの調査を行いましたが、実装してもコードは機能しませんでした。もう少し研究を重ねるうちに、ブラウザはセキュリティ上の理由からウェブサイトが別のホストからデータを取得できないことが分かった。私はJSONPを使うべきだと回答しましたが、まだ動作していませんでしたか?これは私のコードでした。クロスドメインJSONデータの取得、Javascript/JSON

function getWeather(location){ 
    $.getJSON("http://api.openweathermap.org/data/2.5/weather?q=" + location + "&appid=/*my usual app id is here*/&callback=?", function(result){ 
     //response data are now in the result variable 
     alert(result.weather[0].description); 
     var changeW = document.getElementById("theweathertext"); 
     changeW.innerHTML = "The current weather at your destination: " + result.weather[0].description +"."; 
}); 
} 

私がコードをテストすると、ブラウザはデータを取得させませんか?どうすればこの問題を解決できますか?前もって感謝します。

更新:このコードはローカルでテストしていたときに機能していましたが、実際の起動プレビューでは機能しませんでした。これは別の問題かもしれませんか?

$.getJSON(
    'http://api.openweathermap.org/data/2.5/weather?q=lisbon&callback=?', 
    function(data){ 
     console.log(data); 
    } 
); 

EDIT:

+0

エラーメッセージは何ですか? jsonpに関連すると、エラーメッセージの調査から何を学びましたか? –

+0

APIキーを書いてもうまく動作します。コンソールのエラーを確認してください。 – yuriy636

+0

私はレスポンスコード0を受け取りました。そして、このコードは実際にローカルコンソール上で動作していましたが、私はウェブサイトを一時的に公開しても機能しませんでした。 –

答えて

0

私はあなたが有効なAPIキーを提供する場合、このコードは動作すると思いますこれは、現在私がこのエンドポイントにアクセスするには何の権限を持っていないことを意味401のコードを示します。それは私が有効なAPIキーを使用することを提案している理由です。

関連する問題