TypeError: Сбой сетевого запроса (использование ReactNative и Django)

Я разрабатываю мобильное приложение на React Native, и у меня есть REST API в Django на бэкенде. Я хочу сделать POST-запрос из приложения к моему API.

Код

function sendDpi() {
const requestOptions = {
  method: 'POST',
  headers: {
    Accept: 'application/json',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    dpi: imageDpi,
  }),
};
fetch('http://127.0.0.1:8000/', requestOptions)
  .then(response => response.json())
  .then(data => console.log(data))
  .catch(error => {
    console.log(error);
  });
}

Когда sendDpi() вызывается моим приложением, я получаю [TypeError: Network request failed].
127.0.0.1:8000 - это место, где запущено мое приложение Django, я не использую localhost при указании URL (как указано в этом ответе).
Я также изменил android/app/src/main/AndroidManifest.xml, чтобы включить android:usesCleartextTraffic="true".

Я думаю, что 127.0.0.1:8000 также является localhost. Вам нужно найти ваш внешний ip-адрес, если вы используете физическое устройство для тестирования.

Если вы тестируете с эмулятора android, вы можете просто использовать http://10.0.2.2/8000.

Также попробуйте сначала заставить его работать с http. Возможно, у вас нет действительного SSL-сертификата. При недействительном SSL-сертификате вы также получите [TypeError: Network request failed]

Вернуться на верх