У меня проблема с CORS, когда я пытаюсь отправить запрос на c # web api.
Ниже приведена ошибка:
Доступ к XMLHttpRequest по адресу «api url в другом домене» из источника
URL клиента заблокирован политикой CORS: ответ на предпечатную проверку
запрос не проходит проверку контроля доступа: нет
Заголовок «Access-Control-Allow-Origin» присутствует в запрошенном
ресурс.
Тот же вызов API с GET-запросом работает.
Оба сайта развернуты с включенной аутентификацией Windows.
Я использую Angular io, 1.7. ** с машинописью. Ниже показано, как я вызываю API с запросом поста в машинописи.
let httpHeader = new HttpHeaders();
httpHeader = httpHeader.set('Content-Type', 'application/json');
this.http.post(this.apiUrl, this.bodyObject,
{
headers: httpHeader,
withCredentials:true
}).pipe(map(response => {
return response;
})).subscribe(result => {
console.log(result);
}, function (err) {
console.log(err);
});
Сначала я подумал, что это может быть проблема с ApiCors, и протестировал его с помощью приведенного ниже кода jquery, и он работает.
<script>
$.ajax({
url:apiUrl,
type: 'post',
data: {
serviceName: "Country"
},
xhrFields: {
withCredentials: true
},
dataType: 'json',
success: function (data) {
console.info(data);
},
error: function (err) {
console.error(err);
}
});
</script>
Так что я думаю, я как-то связан с моим угловым кодом. Можете ли вы, парень, выделить меня, в чем может быть проблема.