Отключить вызов метода OPTIONS React + Spring boot - PullRequest
1 голос
/ 11 июля 2020

У меня есть фронтенд в React и бэкэнд в Spring boot. У меня есть GET/PUT/POST/DELETE HttpMethods в Rest API, но для каждого запроса от клиента OPTIONS вызов отправляется клиентом (браузером). По соображениям безопасности мне нужно ограничить вызов этих OPTIONS методов от клиента. В настоящий момент изменение на уровне API невозможно. Есть ли какие-либо настройки для предотвращения этого.
Приложение React развернуто в IIS и приложение Spring для загрузки на Tomcat.
Приложение React использует Axios в качестве HTTP Клиент.
Примечание: Я знаю, что предварительный запрос отправляется браузером, и для этого вызываются OPTIONS, я не хочу go в этом направлении.

1 Ответ

1 голос
/ 13 июля 2020

Эти запросы OPTIONS являются частью спецификации CORS , в которой указано, что каждый PUT или POST с типом содержимого application / json должен быть предварительно настроен с помощью OPTIONS для проверки заголовка Access-Control-Allow-Origin без каких-либо побочных эффектов.

Я не вижу никаких проблем с безопасностью при разрешении OPTIONS, но на самом деле это функция безопасности, обеспечиваемая вашим браузером.

Чтобы остановить такое поведение, вы должны использовать те же запросы происхождения. Другие возможности, которые я не рекомендую, - это просто использовать GET для ваших почтовых запросов или POST с типом контента, отличным от application / json. И, конечно же, вы можете написать свой собственный браузер или подключиться из собственной среды (как HttpClient в настольном или мобильном приложении).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...