jQueryのAJAXサポートを介してFlickrとPanoramioから画像を取得するページを開発しています。
Flickr側は問題なく動作していますが、$.get(url, callback)
Panoramioから起動しようとすると、Chromeのコンソールにエラーが表示されます。
XMLHttpRequestはhttp://www.panoramio.com/wapi/data/get_photos?v=1&key=dummykey&tag=test&offset=0&length=20&callback=processImages&minx=-30&miny=0&maxx=0&maxy=150を読み込めません。Origin nullはAccess-Control-Allow-Originでは許可されていません。
ブラウザから直接そのURLをクエリすると、正常に動作します。何が起こっているのですか、これを回避できますか?クエリを間違って作成していますか、またはこれはPanoramioが私がやろうとしていることを妨げるために行うものですか?
Googleは、エラーメッセージに関する有用な一致を表示しませんでした。
編集
この問題を示すサンプルコードを次に示します。
$().ready(function () {
var url = 'http://www.panoramio.com/wapi/data/get_photos?v=1&key=dummykey&tag=test&offset=0&length=20&callback=processImages&minx=-30&miny=0&maxx=0&maxy=150';
$.get(url, function (jsonp) {
var processImages = function (data) {
alert('ok');
};
eval(jsonp);
});
});
この例はオンラインで実行できます。
編集2
これを助けてくれたDarinに感謝します。 上記のコードは間違っています。 代わりにこれを使用してください:
$().ready(function () {
var url = 'http://www.panoramio.com/wapi/data/get_photos?v=1&key=dummykey&tag=test&offset=0&length=20&minx=-30&miny=0&maxx=0&maxy=150&callback=?';
$.get(url, function (data) {
// can use 'data' in here...
});
});
file:///C:/
)。関係ありませんiframe
。
iframe
あなたのことをdocument.write
例に、?