2011-08-23 19 views
21

I da chrome->Inspect element->console ottenere questo errore:Impossibile caricare XMLHttpRequest.?

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

Cos'è questo risolto?

+0

Vedere http://en.wikipedia.org/wiki/Same_origin_policy per lo sfondo. Se stai cercando una soluzione alternativa, devi aggiungere ulteriori dettagli su ciò che stai facendo. –

+1

Il server non consente richieste di origine incrociata. Informazioni di base: http://en.wikipedia.org/wiki/Cross-Origin_Resource_Sharing – sethobrien

+0

[spero può aiutare a] [1] [clicca] [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-demand-resource-node è un'idea ... – Cherryishappy

risposta

17

Non è possibile inviare richieste tramite XMLHttpRequest ad altri domini o sottodomini. Se si sta emettendo la richiesta da www.foo.com, è necessario indirizzare la richiesta su www.foo.com e non lasciare il www.

Se è davvero necessario colpire un altro dominio, è possibile utilizzare JsonP in cui il browser utilizza la capacità dei tag <script> di caricare script da un dominio diverso. Lo script caricato esegue quindi una funzione di callback per darti i dati. Ma per le normali chiamate AJAX non è possibile lasciare il dominio di origine.

vedere l'articolo Wiki su Same Origin Policy

+1

Questa risposta mi ha davvero aiutato. Grazie Tigraine – okconfused

5

un aggeggio utilizza Korz che instrada tutte le richieste di attraversamento di origine attraverso una terza parte e imposta Access-Control-Allow-Origin header su "*" in modo che la richiesta venga eseguita.

+0

Interessante ... questo ha funzionato per test rapidi –

+4

Se ha funzionato, dovresti alzare la risposta. – Stunner

Problemi correlati