Почему консоль разработчика останавливает мой запрос, показывающий ошибку CORS, в то время как другие инструменты rest нет

#api #nginx #cors #fetch-api

#API #nginx #cors #fetch-api

Вопрос:

Я не понимаю, почему, когда я открываю веб-браузер и вызываю некоторый URL API с помощью fetch API (в консоли разработчика) Я получаю ошибку CORS, но когда я делаю это с помощью IntelliJ, все в порядке.

Сервер API имеет следующие заголовки в своей конфигурации NGINX

 add_header Access-Control-Allow-Origin *;
add_header Access-Control-Allow-Methods "POST, GET, PATCH, DELETE, PUT, OPTIONS";
add_header Access-Control-Allow-Headers "Origin, Authorization, Accept";
add_header Access-Control-Allow-Credentials true;
  

Комментарии:

1. Что говорит ошибка браузера?

2. Спасибо, мне просто нужно было добавить метод: «no-cors» в вызов fetch api. Я действительно не прочитал все сообщение об ошибке и уловил только большое слово «CORS»

Ответ №1:

Мне просто нужно было добавить

 mode: "no-cors"
  

для вызова fetchApi

Комментарии:

1. Не очень хороший ответ, поскольку в вашем вопросе вы указываете, что разрешаете методы, PATCH, DELETE, PUT, OPTIONS которые все равно будут работать с no-cors режимом.