Ich entwickle eine Seite, die Bilder von Flickr und Panoramio über die AJAX-Unterstützung von jQuery abruft.
Die Flickr-Seite funktioniert einwandfrei, aber wenn ich es $.get(url, callback)
von Panoramio aus versuche, wird in der Chrome-Konsole ein Fehler angezeigt:
XMLHttpRequest kann 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 nicht laden . Origin null ist von Access-Control-Allow-Origin nicht zulässig.
Wenn ich diese URL direkt von einem Browser abfrage, funktioniert es einwandfrei. Was ist los und kann ich das umgehen? Verfasse ich meine Abfrage falsch oder unternimmt Panoramio dies, um zu verhindern, dass ich versuche, dies zu tun?
Google hat in der Fehlermeldung keine nützlichen Übereinstimmungen gefunden .
BEARBEITEN
Hier ist ein Beispielcode, der das Problem zeigt:
$().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);
});
});
Sie können das Beispiel online ausführen .
BEARBEITEN 2
Vielen Dank an Darin für seine Hilfe. Der obige Code ist falsch. Verwenden Sie stattdessen Folgendes:
$().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:/
). Nein iframe
ist beteiligt.
iframe
, in die Siedocument.write
zum Beispiel?