Ошибка SEC7120: [CORS] Источник "http://localhost:4200" не нашел "http://localhost:4200" в ответе Access-Control-Allow-Origin

На самом деле я пытаюсь подключить приложение Angular к моему веб-приложению Maven-Jersey (реализует концепцию Rest Services) и получаю эту ошибку.

Более подробная информация: Я использую Oracle10g XE Database Eclipse IDE для проекта Maven ( http://localhost:8080/MavenProject) Угловой интерфейс командной строки ( http://localhost:4200/)

Я хочу получить данные из базы данных (хранится в таблице студентов), а затем отобразить эти данные в Angular App в виде таблицы. Мой проект на основе трикотажа возвращает данные таблицы в формате JSON и XML (успешно выполняется).

извлечение данных таблицы учеников в формате JSON с помощью Maven-jersey-webapp, реализующего rest

угловой код делает запрос на получение с использованием HttpClient

ошибка, которую я получаю, делая запрос на получение

1 ответ

У меня была точно такая же ошибка.

Проблема была в проекте веб-API ядра.NET. Метод, для которого я сделал сообщение, имел объект, определенный в списке параметров, без пустого конструктора.

Ошибка CORS действительно вводила в заблуждение.

Откройте файл App_Start/WebApiConfig.cs. Добавить config.EnableCors(); в методе WebApiConfig.Register.

Вы можете исправить это, проверив, используете ли вы

http vs https

Просто используйте http, чтобы исправить это. После этого добавьте это в заголовок в угловом сервисе, который вы создали, выполняя подобный код

 const httpOptions = {
            headers: new HttpHeaders({
                'Access-Control-Allow-Origin': 'http://localhost:4200', // -->Add this line
                'Access-Control-Allow-Methods': 'GET,PUT,POST,DELETE,OPTIONS',
                'Access-Control-Allow-Headers': '*',
                'Content-Type': 'application/json',
                'Accept': 'application/json'
            })
        };

Просто проверьте строковое значение, которое вы передали в своем коде. Иногда ваш взгляд обманывает эти ценности. подобно

http: // localhost: 4200 против https: // localhost: 4200

Другие вопросы по тегам