Domanda

Io uso il modello d backbone.js. Quando ho salvare il modello, invia metodo HTTP OPTIONS per lato server su Firefox, ma invia metodo HTTP POST con Safari.

Lo so che non è un problema su backbone.js, si tratta di CORS. Mi limito a verificare se il metodo, GET, POST, PUT e DELETE sul lato server, non voglio fare un lavoro con metodo HTTP OPTIONS.

il mio URL richiesto è il mio api: api.foo.com e api richiesto da: bar.com

così, come posso controllare in tutti i browser ricerca Il mio api.foo.com con HTTP POST non OPZIONI? E come posso condividere s api.foo.com' contento di tutte le richieste da altri domini?

Nota: ho già cambiato le intestazioni di risposta' s dal lato server per: Access-Control-Allow-Origin: *

È stato utile?

Soluzione

La richiesta OPTIONS è in realtà il cosiddetto richiesta di verifica preliminare dei CORS specifica . Questa richiesta preflight viene utilizzato dai browser web per verificare in quali condizioni il server avrebbe accettato una richiesta dal rispettivo origine. Se la risposta alla richiesta di verifica preliminare è stata soddisfacente, il browser invierà la richiesta effettiva.

Quindi, per rispondere a questa specifica, è necessario il server di riprodurre i passi di preflight elaborazione della richiesta .

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top