Ошибка: ошибка сети с React Native, запрос веб-интерфейса ядра .net - PullRequest
0 голосов
/ 12 декабря 2018

(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)

1 Ответ

0 голосов
/ 09 апреля 2019

Просто возникла та же проблема.

Даже если вы не получаете ошибку CORS , вы все равно можете пропустить заголовок Access-Control-Allow-Origin, который все еще 'erors' Ваш запрос.

Вам необходимо добавить 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

...