Запрос на исправление Nginx завершается недействительным запросом CORS

Запрос на исправление Nginx завершается недействительным запросом CORS

Настройка проста.

Три Docker-контейнера в одной сети.

  1. ReactJs — производственная сборка на сервере nginx
  2. Весенний ботинок
  3. Mysql

Запросы GET, POST работают отлично, но когда я пытаюсь использовать запрос PATCH, я получаю

Неверный запрос CORS

2021/09/01 23:17:27 [notice] 31#31: *5 "/api/(.*)" matches "/api/task/assign/5/S01", client: 172.18.0.1, server: localhost, request: "PATCH /api/task/assign/5/S01 HTTP/1.1", host: "localhost", referrer: "http://localhost/operator/controlpanel"
2021/09/01 23:17:27 [notice] 31#31: *5 rewritten data: "/task/assign/5/S01", args: "", client: 172.18.0.1, server: localhost, request: "PATCH /api/task/assign/5/S01 HTTP/1.1", host: "localhost", referrer: "http://localhost/operator/controlpanel"
172.18.0.1 - - [01/Sep/2021:23:17:27 +0000] "PATCH /api/task/assign/5/S01 HTTP/1.1" 403 31 "http://localhost/operator/controlpanel" "Mozilla/5.0 (Windows NT xx; Win64; x64; rv:xx) Gecko/20100101 Firefox/91.0" "-"

Моя конфигурация nginx

server {
  listen          80;
  server_name     localhost;
  expires -1;
  etag off;
  proxy_no_cache 1;
  rewrite_log on;

 location / {
   root /usr/share/nginx/html;
   try_files $uri /index.html;
 }

  location /api {
        rewrite /api/(.*) /$1  break;
        proxy_pass http://app:8080;
        proxy_pass_request_headers on;
        default_type  application/json;
  }
}

В конце загрузки Spring я не получил никакой информации о запросе, поэтому предполагаю, что он был заблокирован перед отправкой на сервер Spring.

Есть идеи, что я делаю не так?

решение1

Ваше приложение отправило ошибку 403 Forbidden, поэтому оно должно что-то делать. Убедитесь, что ваше приложение действительно ведет журнал. – Майкл Хэмптон 2 сентября 2021 г. в 16:13

По какой-то причине Spring не записал это в логи. Если кто-то столкнется с такой же проблемой, попробуйте отладить запрос до фильтра Cors.

Связанный контент