Ошибка запроса источника CORS для метода POST в Ionic6 + Angular9 - PullRequest
0 голосов
/ 25 мая 2020

Я пытаюсь выполнить POST, используя Angular HttpClient. Я получаю сообщение об ошибке, как показано ниже:

Доступ к XMLHttpRequest по адресу 'https://url.com' from origin 'http://localhost: 8100 ' заблокирован политикой CORS: ответ на запрос предварительной проверки не проходит проверку контроля доступа: на запрошенном ресурсе отсутствует заголовок Access-Control-Allow-Origin.

Я также попытался упомянуть заголовки, как показано ниже

this.httpClient.post(this.url,JSON.stringify(data),{
  headers:{
    'Access-Control-Allow-Origin': '*',
    'Content-Type':'application/json',
    'Access-Control-Allow-Methods':'GET,POST,PATCH,DELETE,PUT,OPTIONS',
  }
}).subscribe(res=>{
  console.log(res);
})

Я также убедился, что тип данных - JSON. Вызов метода GET работает нормально, но метод публикации не работает должным образом даже после добавления заголовков.

Ответы [ 2 ]

1 голос
/ 25 мая 2020

Заголовки CORS должны применяться на стороне сервера, а не на стороне клиента.

Согласно Википедии:

Совместное использование ресурсов из разных источников (CORS) - это механизм, который позволяет запрашивать ограниченные ресурсы на веб-странице из другого домена за пределами домена, из которого первый ресурс был обслужен. [1]

https://en.wikipedia.org/wiki/Cross-origin_resource_sharing

Таким образом, это не должно иметь никакого смысла, если вы предоставляете заголовки CORS в своем клиенте.

0 голосов
/ 25 мая 2020

Эта проблема в значительной степени связана с серверной частью, убедитесь, что отправили параметры правильно, и вы можете попробовать это расширение для chrome https://chrome.google.com/webstore/detail/allow-cors-access-control/lhobafahddgcelffkeicbaginigeejlf?hl=en

или это для firefox https://addons.mozilla.org/ar/firefox/addon/access-control-allow-origin/

...