[英]React Native throw Network Error when using Axios or Fetch in android
[英]axios requests throw “Network Error” on Android (Cordova container)
我已经将一个Vue
应用程序封装到一个 Cordova 容器中,并通过 Android Studio 部署在 Android 上。 发送到我的服务器的每个请求都失败,并显示消息Error: Network Error
。
这在浏览器或 iO 中不是问题。
我研究了这个问题并尝试了各种解决方案:
我已经安装了cordova-plugin-whitelist
插件并按照文档中的描述进行了配置
我在AndroidManifest.xml
文件中设置了权限:
<edit-file mode="merge" parent="/manifest/uses-permission" target="AndroidManifest.xml">
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
</edit-file>
"Content-Security-Policy"
标签:<meta data-n-head="1" http-equiv="Content-Security-Policy" content="default-src * 'unsafe-inline' 'unsafe-eval'; script-src * 'unsafe-inline' 'unsafe-eval'; connect-src * 'unsafe-inline'; img-src * data: blob: 'unsafe-inline'; frame-src *; style-src * 'unsafe-inline';">
我已按照此答案中的说明将我的服务器地址从localhost:3000
更改为我服务器的 IP 地址: axios 和 android 模拟器的网络错误- 我还尝试通过本地隧道运行它以获得“真实”的 API URL - 相同问题
按照上面线程中的指示,我还添加了标题:
"Content-Type": "application/x-www-form-urlencoded",
Accept: "application/json"
仍然Error: Network Error
。 我几乎可以肯定这与权限有关,但我无法再配置以使其正常工作。
我正在使用Cordova 10在Android 10.0+设备上对此进行测试。
在0.20.0 Axios公司。
我找到了解决我的问题的方法。 看起来 Android 默认不允许对 http 的请求,如该线程中所述: Internet 权限在 oreo 和 pie 中不起作用
将 localtunnel 更改为https
为我解决了这个问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.