Нарушение безопасности CORS вызвано вашим браузером, который:
- получил код React (предположительно, комплекты скриптов) с одного сервера,
- видит попытки этого кода извлечь издругой сервер, который не говорит браузеру успокоиться и допустить это нарушение безопасности.
Не удалось загрузить ресурс: сервер ответил со статусом 405
Это означает, что браузер пытался связаться с «другим сервером» до получения и спросить, должен ли он терпеть нарушение безопасности, но «другой сервер» отказался говорить. Технически говоря, браузер отправил HTTP-запрос, используя HTTP-глагол OPTIONS
, и сервер ответил, указав, что он не поддерживает этот глагол.
Доступ к выборке в 'https://accounts.google.com/o/oauth2/
Это фактическое нарушение CORS, обнаруженное браузером, который фактически отказался выполнять выборку.
Существует множество рецептов, как успокоить браузер, чтобы он допустил нарушения CORS. Но лучший подход состоит в том, чтобы гарантировать, что нарушения не произойдут, чтобы не было необходимости ослаблять безопасность.
Результатом сборки приложения React являются файлы .html и пакеты сценариев, возможно, исходные карты. Называется сборка артефактов. Если вы структурируете свой проект таким образом, чтобы как в процессе разработки, так и в процессе производства браузер получал все (артефакты сборки, ответы API) из одного источника, например Express, тогда не будет места для проблем с CORS.