5

Ho un'applicazione web a pagina singola fornita da www.example.com. Questo applicazioni webCome posso effettuare richieste tra domini con intestazioni personalizzate senza utilizzare XDomainRequest o XMLHttpRequest?

  • ha bisogno di fare richieste AJAX contro un altro server denominato api.example.com
  • deve impostare alcuni campi di intestazione come Authorization per l'invio di richieste di api.example.com
  • deve essere compatibile con i recenti e meno recenti i browser (ad esempio IE> = 8)

Tutto questo funziona gestendo CORS richieste su api.example.com con Chrome (e altri browser basati su WebKit recenti) utilizzando XMLHttpRequest. IE older than version 10 non implementa CORS per XMLHttpRequest e fornisce invece l'oggetto non standard XDomainRequest per richieste tra domini. Ma XDomainRequest non implementa un modo per i campi set HTTP header.

Quindi la mia domanda è: come posso effettuare richieste tra domini con intestazioni personalizzate senza utilizzare XDomainRequest o XMLHttpRequest? Qual è la soluzione migliore?

Modifica: controllo su tutti i server coinvolti (* .example.com).

risposta

1

Temo che non ci sia altro modo che implementare un proxy per questa richiesta dal lato server dell'applicazione. An example.

+3

Questo è corretto. Puoi sempre usare iframe e 'postMessage'. – idbehold

+0

Quindi presumo che ci sia almeno un altro modo :) –

+0

Non avevo idea di quale metodo utile come postMessage esistesse, quindi grazie @idbehold. Avrai bisogno di avere il controllo su api.example.com, perché devi mettere il contenuto iframe in quel dominio. Inoltre sembra che tu possa inviare solo stringhe con postMessage in IE. –