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
我正在使用 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