Estoy desarrollando una página que extrae imágenes de Flickr y Panoramio a través del soporte AJAX de jQuery.
El lado de Flickr funciona bien, pero cuando trato $.get(url, callback)
de Panoramio, veo un error en la consola de Chrome:
XMLHttpRequest no puede cargar 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 . El origen nulo no está permitido por Access-Control-Allow-Origin.
Si consulto esa URL desde un navegador directamente, funciona bien. ¿Qué está pasando y puedo evitar esto? ¿Estoy redactando mi consulta incorrectamente, o es algo que Panoramio hace para obstaculizar lo que estoy tratando de hacer?
Google no mostró coincidencias útiles en el mensaje de error .
EDITAR
Aquí hay un código de muestra que muestra el problema:
$().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);
});
});
Puede ejecutar el ejemplo en línea .
EDITAR 2
Gracias a Darin por su ayuda con esto. EL CÓDIGO ANTERIOR ESTÁ MAL. Use esto en su lugar:
$().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:/
). No iframe
está involucrado.
iframe
que usteddocument.write
, por ejemplo?