Estoy tratando de obtener algunos datos json de un sitio web "remoto". Ejecuto mi servicio web en el puerto 99000 y luego, lanzo mi sitio web en el puerto 99001 (http: // localhost: 99001/index.html).XMLHttpRequest no puede cargar una URL con jQuery
me sale el siguiente mensaje:
XMLHttpRequest cannot load http://localhost:99000/Services.svc/ReturnPersons. Origin http://localhost:99001 is not allowed by Access-Control-Allow-Origin.
incluso si pongo en marcha mi página web como un archivo HTML, me sale esto:
XMLHttpRequest cannot load http://localhost:99000/Services.svc/ReturnPersons.Origin null is not allowed by Access-Control-Allow-Origin.
Los datos devuelve el servicio Web. Trato de atrapar a los elementos de datos de esta manera:
var url = "http://localhost:99000/Services.svc/ReturnPersons";
$.getJSON(url, function (data) {
success: readData(data)
});
function readData(data) {
alert(data[0].FirstName);
}
Y yo estoy tratando de conseguir esta estructura:
[{"FirstName":"Foo","LastName":"Bar"},{"Hello":"Foo","LastName":"World"}]
¿Conoce por qué estoy recibiendo este error?
He resuelto el problema agregando el "& callback =?" a la URL ¡Gracias! – Zakaria
¿Debo especificar/implementar algo en el script del servidor en el servidor remoto? – j7nn7k
Sí, donde su servidor normalmente devuelve una cadena JSON, p. '{" foo ":" bar "}' necesita envolver la cadena json en un método de devolución de llamada (función javascript) que maneja la respuesta json. p.ej. 'myFunction ({" foo ":" bar "}};' – CharlesLeaf