TypeError: Network request failed (using ReactNative and Django)

TypeError: Network request failed (using ReactNative and Django)

我正在使用 React Native 开发一个移动应用程序,并且在后端的 Django 中有一个 REST API。我想从应用向我的 API 发出 POST 请求。

代码

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 应用 运行。我也尝试过使用我的 IP 地址(正如 this 回答所指出的那样)。
我还修改了 android/app/src/main/AndroidManifest.xml 以包含 android:usesCleartextTraffic="true".

我认为 127.0.0.1:8000 也是本地主机。如果您使用物理设备进行测试,则需要找到您的外部 IP 地址。

我是用 android 模拟器测试的,你可以直接使用 http://10.0.2.2/8000

也先尝试让它与 http 一起工作。您可能没有有效的 SSL 证书。使用无效的 SSL 证书,您还会得到 [TypeError: Network request failed]

之前的建议很好,只是需要的 URL 应该是 http://10.0.2.2:8000 而不是 http://10.0.2.2/8000