2011-08-23 48 views
21

I por chrome->Inspect element->console sale este error:XMLHttpRequest no se puede cargar.?

XMLHttpRequest cannot load. Origin is not allowed by Access-Control-Allow-Origin.

Que es esto resuelve?

+0

Consulte http://en.wikipedia.org/wiki/Same_origin_policy para ver el fondo. Si está buscando una solución, necesita agregar más detalles sobre lo que está haciendo. –

+1

El servidor no permite solicitudes de origen cruzado. información de fondo: http://en.wikipedia.org/wiki/Cross-Origin_Resource_Sharing – sethobrien

+0

[espero que le puede ayudar a] [1] [click] [2] [1] : http://stackoverflow.com/questions/3828982/xmlhttprequest-cannot-load-an-url-with-jquery [2]: http://stackoverflow.com/questions/22230520/no-access-control- allow-origin-header-is-present-on-the-requested-resource-node es idea ... – Cherryishappy

Respuesta

17

No puede emitir solicitudes a través de XMLHttpRequest a otros dominios o subdominios. Si está emitiendo la solicitud desde www.foo.com, también debe dirigir la solicitud a www.foo.com y no omitir el www.

Si realmente necesita acceder a otro dominio, puede usar JsonP donde el navegador utiliza la capacidad de las etiquetas <script> para cargar scripts desde un dominio diferente. El script cargado luego ejecuta una función de devolución de llamada para proporcionarle los datos. Pero para las llamadas AJAX regulares, no puede abandonar el dominio de origen en absoluto.

Véase el artículo de la wiki en Same Origin Policy

+1

Esta respuesta realmente me ayudó. Gracias Tigraine – okconfused

5

one work around usa Korz, que enruta todas las solicitudes de origen cruzadas a través de un tercero y establece Access-Control-Allow-Origin header en '*' para que se complete la solicitud.

+0

Interesante ... esto sí que funciona para pruebas rápidas –

+4

Si funcionó, debe devolver la respuesta. – Stunner

Cuestiones relacionadas