Cordova 12 Android 不支持 http 原因探索

最近在升级 Cordova 到最新版本,升级完成后发现无法请求网络,研究了两次最终发现解决方案。

发现控制台中有日志输出,提示当前是 https ,无法直接访问 http。

复制代码
[INFO:CONSOLE(225)] "Mixed Content: The page at 'https://localhost/index.html' was loaded over HTTPS, but requested an insecure XMLHttpRequest endpoint 'http:// ....'. This request has been blocked; the content must be served over HTTPS.", source: webpack:///./node_modules/@sentry/browser/esm/integrations/trycatch.js? (225)

开始去查找 config.xml 文件,此时花费了比较多的实际无果。然后就去查代码,在 Android 中查到源码。

从代码可以看出从配置项中获取配置,如果没有就默认为 https。这样解决方案就简单了,直接给一个配置项就可以了。

复制代码
<platform name="android">
        <preference name="Scheme" value="http"/>
</platform>

不得不感慨,Cordova 的资料越来越少了,自己看源码可能还快一些~

相关推荐
157092511347 小时前
Android进阶之光:HTTP协议原理深度解析
android·网络协议·http
终端安全笔记8 小时前
安卓五品牌通道差在哪:监管通道拆解
android
v_34836087629 小时前
Android native端 堆栈打印
android·算法
一笑的小酒馆9 小时前
AndroidKMP之导航和WebView
android
2501_9327502613 小时前
Android BottomNavigationView 入门介绍
android
Godikov14 小时前
硬件异步事件下的业务一致性:智能柜领取/归还流程的竞态设计
android
Godikov14 小时前
不用 Netty:Android 手写 TCP 客户端实战——自定义协议帧、粘包处理与可靠重连
android
事圆则缓15 小时前
Java 面向对象如何落到 Android View 体系
android
iPad协议个微协议16 小时前
# 微信自动营销系统如何基于 WechatApi 做事件驱动设计
android·微信·企业微信·个人开发·wechatapi·微信个人号开发
AirDroid_cn16 小时前
隐私沙盒:第三方应用读取剪切板内容如何拦截?
android·gitee