В запрошенном ресурсе отсутствует заголовок «Access-Control-Allow-Origin».403 запрещено - PullRequest
1 голос
/ 24 мая 2019

Доступ к XMLHttpRequest по адресу http://localhost:8080/spring-mvc-restfull-crud-example/adduser' от источника 'http://localhost:4200' заблокирован политикой CORS: Ответ на предпечатный запрос не проходит проверку контроля доступа: Нет' Access-Control-Allow- Заголовок источника 'присутствует на запрашиваемом ресурсе.

Я установил Cors на свое рабочее место. даже в пружине включен контроллер. И тот же код работал раньше, и вдруг он начал выдавать эту ошибку

403 запрещено

1 Ответ

0 голосов
/ 24 мая 2019

Из документов

Разработчики Angular могут столкнуться с ошибкой совместного использования ресурсов между источниками при выполнении запроса на обслуживание (обычно запрос на обслуживание данных) длясервер, отличный от собственного хост-сервера приложения.Браузеры запрещают такие запросы, если сервер не разрешает их явно.

Клиентское приложение не может ничего сделать с этими ошибками.Сервер должен быть настроен на прием запросов приложения.Подробнее о том, как включить CORS для определенных серверов, см. enable-cors.org

Чтобы включить CORS в Spring, вы можете обратиться к CORS с пружиной

Альтернативный подход
Настройка прокси на бэкэнд

Настройка прокси для вызовов API для вашего приложения Angular CLI

"/api/*": {
      "target": "https://localhost:8000",
      "secure": false,
      "logLevel": "debug",
      "pathRewrite": {
        "^/api": ""
      },
      "changeOrigin": true
    }
  1. "api/*":
    Все запросы на /api/ изнутри вашегоприложение будет перенаправлено на target": "https://localhost:8000/api
  2. "secure": false,:
    Внутренний сервер, работающий по протоколу HTTPS с недействительным сертификатом, по умолчанию не будет принят.Если вы хотите, вам нужно установить secure: false.

  3. "logLevel": "debug"
    Чтобы отладить, работает ли ваш прокси должным образом, вы также можете добавитьОпция logLevel выглядит следующим образом: Возможные опции для logLevel включают debug, info, warn, error и silent (по умолчанию - информация).

  4. "pathRewrite": { "^/api": "" }, Параметр pathRewrite говорит, что если путь соответствует ^/api (то есть если он начинается с / api), то переписать эту часть пустой строкой (т.е. удалить ее из пути), поэтому весь запрос к https://localhost:8000/api перейдет кhttps://localhost:8000

  5. "changeOrigin": true: если вам нужен доступ к бэкенду, который не находится на локальном хосте, или когда вы используете некоторые виртуальные прокси (например, настроенные с Apache2) на вашем бэкэндеустановите его в true.

  6. `target:

proxy options, предоставляемый в этом пакете, из базового node-http-proxy

Поддержка прокси может помочь вам избавиться от некоторых CORS исключений на этапе разработкино клиентское приложение мало что может сделать с этими исключениями. Сервер должен быть настроен на прием запросов приложения.
I want to add CORS support to my server

ПРИМЕЧАНИЕ :

Конфигурация proxy предназначена для прокси-вызовов при запуске сервера dev через ng serve.После запуска ng build вы отвечаете за веб-сервер и его настройки.

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