servidor mostrar interno error jquery ajax xmlhttprequest jqxhr

mostrar - JQuery ajax llame para obtener el código de estado 0 "error"



jquery ajax post json internal server error (2)

Intento llamar a Petfinder.com para obtener una lista de nuestras mascotas. La URL es http://api.petfinder.com/shelter.getPets?key=xxxxx&id=CA1469&format=json

La URL parece devolver el JSON bien. Pero cuando trato de hacer la llamada recibo un "error" y un código de estado 0. Intenté usar jsonp, lo que da como resultado un estado de 200 pero un error de análisis. Si cambio a xml, tengo el resultado del estado 0 y "error".

$.ajax({ url: "http://api.petfinder.com/shelter.getPets?key=xxxx&id=CA1469&format=json", dataType: "json", type: "GET", success: function (data) { alert("hi"); }, error: function (jqXHR, exception) { if (jqXHR.status === 0) { alert(''Not connect./n Verify Network.''); } else if (jqXHR.status == 404) { alert(''Requested page not found. [404]''); } else if (jqXHR.status == 500) { alert(''Internal Server Error [500].''); } else if (exception === ''parsererror'') { alert(''Requested JSON parse failed.''); } else if (exception === ''timeout'') { alert(''Time out error.''); } else if (exception === ''abort'') { alert(''Ajax request aborted.''); } else { alert(''Uncaught Error./n'' + jqXHR.responseText); } } });


Debe asegurarse de que cuando el servidor le envía una respuesta de error, también envíe los encabezados CORS correctos junto con él.

Si no lo hace, el navegador no permitirá que su código JavaScript vea ninguna información proveniente de ese dominio, incluso el código de estado.


Te encuentras con un problema XSS CORS. La mejor solución es configurar un proxy en su servidor web, y enrutar la llamada AJAX a través de él.