2014-11-03 13 views
5

Mam REST API siedzi w subdomenie mojej stronie, więc jest to konfiguracja jak poniżej:Czy muszę włączyć CORS, gdy mój interfejs API znajduje się na poddomenie mojej głównej witryny?

api.blah.com - RESTful api 
blah.com - Website 

Kiedy próbuję zrobić żądania HTTP jednak, pojawia się następujący błąd:

No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin '(index)' is therefore not allowed access. 

Myślałem, że ponieważ to było w tej samej domenie, to powinno działać, czy muszę włączyć CORS, czy jest coś innego, co muszę zrobić?

Interfejs API jest oparty na interfejsie API ASP.Net Web, a witryna jest oparta na AngularJS.

Dzięki

Odpowiedz

6

Tak, musisz go włączyć. Musisz wysłać CORS allow headers ze strony serwera do przeglądarki. Dzieje się tak dlatego, że poddomena liczy się jako inna origin. Prawdopodobnie musisz zezwolić na metody HTTP, takie jak PUT, DELETE, OPTIONS. Przynajmniej sądzę, że kątowe wysyła również tego rodzaju prośby. Musisz obsłużyć żądania preflightów (OPCJE) tymi nowymi metodami.

+0

Szczury! Ok dzięki – JMK