Ошибка: ошибка сети с React Native, запрос веб-интерфейса ядра.net
(AXIOS GET)
Я прошу .net core web api 2.1
с реагировать на родную, но ошибку я получаю на консоли следующим образом:
Примечание: Cors получил разрешения от .net core 2.1
,
Код:
return axios.get('http://127.0.0.1:50000/api/values', {
credentials: 'include'
})
.then(
(response) => {
console.log(response);
}
)
.catch(
(error) => {
console.log(error);
}
);
Ошибка:
Error: Network Error
at createError (D:\Projeler\Mobile\ReactNative\primCepte\node_modules\axios\lib\core\createError.js:16)
at XMLHttpRequest.handleError (D:\Projeler\Mobile\ReactNative\primCepte\node_modules\axios\lib\adapters\xhr.js:87)
at XMLHttpRequest.dispatchEvent (D:\Projeler\Mobile\ReactNative\primCepte\node_modules\event-target-shim\lib\event-target.js:172)
at XMLHttpRequest.setReadyState (D:\Projeler\Mobile\ReactNative\primCepte\node_modules\react-native\Libraries\Network\XMLHttpRequest.js:580)
at XMLHttpRequest.__didCompleteResponse (D:\Projeler\Mobile\ReactNative\primCepte\node_modules\react-native\Libraries\Network\XMLHttpRequest.js:394)
at D:\Projeler\Mobile\ReactNative\primCepte\node_modules\react-native\Libraries\Network\XMLHttpRequest.js:507
at RCTDeviceEventEmitter.emit (D:\Projeler\Mobile\ReactNative\primCepte\node_modules\react-native\Libraries\vendor\emitter\EventEmitter.js:190)
at MessageQueue.__callFunction (D:\Projeler\Mobile\ReactNative\primCepte\node_modules\react-native\Libraries\BatchedBridge\MessageQueue.js:349)
at D:\Projeler\Mobile\ReactNative\primCepte\node_modules\react-native\Libraries\BatchedBridge\MessageQueue.js:106
at MessageQueue.__guard (D:\Projeler\Mobile\ReactNative\primCepte\node_modules\react-native\Libraries\BatchedBridge\MessageQueue.js:297)
0 ответов
Просто была такая же проблема.
Даже если вы не получите ошибку CORS, вы все равно можете пропустить Access-Control-Allow-Origin
заголовок, который все еще "ошибается" в вашем запросе.
Вам нужно добавить CORS в ваше основное приложение ASP.net.
services.AddCors(options =>
options.AddPolicy("MyPolicy",
builder => {
builder.AllowAnyOrigin().AllowAnyMethod().AllowAnyHeader();
}
)
);
а потом
app.UseCors("MyPolicy");
до
app.UseMvc();
Это удобно и позволит ЛЮБОЙ ajax-запрос к вашему API, но это не идеально.
Вы можете разрешить IP-адреса и домены по вашему выбору. Как это сделать, читайте подробнее в разделе Включение перекрестных запросов (CORS) в ASP.NET Core.