Ошибка CORS при HTTP-вызовах в angular-universal (на стороне сервера) - PullRequest
0 голосов
/ 26 апреля 2018

Я использую angular universal и генерирую HTTP-запросы к серверу. Мой сервер находится в другом домене (api.mysite.com) с настройками CORS.

Он отлично работает в браузере (потому что www.mysite.com разрешен), но на стороне сервера после завершения вызова я получаю сообщение об ошибке CORS, потому что Origin равно http://<server ip>:<port>.

Когда я пытаюсь установить источник через перехватчик HTTP, я получаю сообщение об ошибке Refused to set unsafe header "Origin" ...

Любой

1 Ответ

0 голосов
/ 27 апреля 2018

CORS обычно настраивается на стороне сервера и принудительно устанавливается на стороне клиента браузером.

Если я правильно понял, то, что у вас здесь есть, не является классической проблемой CORS, так как похоже, что ваш api-сервер пытается применить политику CORS (то есть отказывать клиентам с неверным источником).

Установка клиентской стороны заголовка Origin недопустима, так как она обрабатывается браузером. Если какой-либо js-клиент сможет установить заголовок Origin, механизм CORS не даст никакой выгоды.

Я бы сказал, что либо настройте свой api-сервер, чтобы разрешить доступ к js-серверу узла с вашим пользовательским механизмом, либо не проверяйте сторону сервера заголовков Origin и не разрешайте браузеру делать это на стороне клиента, то есть обычным способом. .

...