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 的资料越来越少了,自己看源码可能还快一些~

相关推荐
Ehtan_Zheng18 小时前
让你的代码更整洁:10 个必知的 Kotlin 扩展函数
android
城东米粉儿18 小时前
Android VSync 笔记
android
城东米粉儿18 小时前
Android SurfaceFlinger 笔记
android
似霰18 小时前
Android 日志系统5——logd 写日志过程分析二
android·log
hewence119 小时前
Kotlin CoroutineContext 详解
android·开发语言·kotlin
Albert Edison19 小时前
【Python】文件
android·服务器·python
大模型玩家七七19 小时前
效果评估:如何判断一个祝福 AI 是否“走心”
android·java·开发语言·网络·人工智能·batch
Aurora41919 小时前
Android事件分发逻辑--针对事件分发相关函数的讲解
android
似霰20 小时前
Android 日志系统4——logd 写日志过程分析一
android