Я создал webapi в ASP.NET Core, и мне нужно использовать его с помощью React, веб-API работает нормально, если я использую curl или почтальон среди других, он работает нормально.Проблема начинается, когда я собираюсь использовать React, когда я пытаюсь сделать какие-либо запросы для моего API с js из проблемы.
Чтобы еще больше усложнить ситуацию, когда я делаю запрос для других API, он работает нормальноэто заставило меня поверить, что проблема была в моем API, но, как я уже сказал, он работает с другими только с той реакцией, которой нет.Я пробовал это разными способами.
API работает на IIS в моей локальной сети
Пути попыток
Использование Ajax
$ .ajax ({
method: "POST",
url: 'http://192.168.0.19:5200/api/token',
beforeSend: function (xhr) {
xhr.setRequestHeader ("Content-type", "application / json");
},
date: {
name: 'name',
password: 'password'
},
success: function (message) {
console.log (message);
},
error: function (error) {
/ * if (error.responseJSON.modelState)
showValidationMessages (error.responseJSON.modelState); * /
console.log (error);
}
});
Использование Fetch
const headers = new Headers ();
headers.append ('Content-Type', 'application / json');
const options = {
method: 'POST',
headers,
body: JSON.stringify (login),
mode: 'cors' // I tried with cors and no-cors
}
const request = new Request ('http://192.168.0.19:5200/api/token', options);
const response = await fetch (request);
const status = await response.status;
console.log (response); * /
// POST adds a random id to the object sent
fetch ('http://192.168.0.19:5200/api/token', {
method: 'POST',
body: JSON.stringify ({
name: 'name',
password: 'password'
}),
headers: {
"Content-type": "application / json; charset = UTF-8"
},
credentials: 'same-origin'
})
.then (response => response.json ())
.then (json => console.log (json))
Использование запроса
var request = new XMLHttpRequest ();
request.open ('POST', 'http://192.168.0.19:5200/api/token', true);
request.setRequestHeader ('Content-Type', 'application / json; charset = UTF-8');
request.send (login);
ОШИБКИ
Консоль
Вкладка "Сеть"
Когда я делаю это без изменения типа контента на JSON, он работает, потому что API возвращает сообщение о том, что этонедопустимый тип.