Phonegap开发Android应用遇URL白名单拦截问题求助
解决PhoneGap调用服务器PHP时的URL白名单拦截问题
这个问题我之前开发PhoneGap应用时也踩过坑!核心原因就是PhoneGap的域名白名单机制——它默认只允许访问本地localhost,你的服务器域名不在允许列表里,所以就被拦截了,出现那个URL blocked by whitelist报错。
按下面的步骤一步步来改,应该就能解决:
- 首先找到项目根目录下的
config.xml文件,这是PhoneGap的核心配置文件,所有权限和域名规则都在这里设置。 - 如果你的PhoneGap版本是4.0及以上,先确认有没有安装白名单插件(很多模板项目已经自带,但保险起见可以检查下),没有的话用命令安装:
cordova plugin add cordova-plugin-whitelist - 在
config.xml里添加允许访问你的服务器的规则:
如果你只想允许特定服务器,就写:
要是开发阶段想临时允许所有域名(上线前一定要改成特定域名,不然有安全风险),可以用:<!-- 允许访问你的服务器所有路径,替换成实际域名 --> <allow-navigation href="https://你的服务器域名/*" /> <!-- 同时添加网络访问权限 --> <access origin="https://你的服务器域名/*" /><allow-navigation href="*" /> <access origin="*" /> - 额外检查Android平台的配置:打开
platforms/android/app/src/main/AndroidManifest.xml,确保里面有网络权限:<uses-permission android:name="android.permission.INTERNET" /> - 最后记得清理项目缓存,重新编译打包PhoneGap项目,有时候旧的配置缓存会导致新规则不生效。
内容的提问来源于stack exchange,提问作者Gander
相关产品推荐
相关产品推荐

