最初我试图通过 Socket.io 建立连接,但很快发现“外部”的任何内容都无法加载到我的 Cordova/iOS 应用程序中。 我检查了 config.xml 中的白名单设置。他们似乎很好,但以防万一我补充道
不幸的是,这没有帮助。 我试图删除白名单插件
cordova plugin add org.apache.cordova.whitelist
Plugin "cordova-plugin-whitelis" is not present in the project. See
cordova plugin list
.
所以我检查了 cordova 插件列表并返回了
cordova-plugin-console 1.0.1 "Console"
cordova-plugin-dialogs 1.1.1 "Notification"
cordova-plugin-vibration 1.2.0 "Vibration"
cordova-plugin-whitelist 1.1.0 "Whitelist"
我猜上面的可能是某种默认的?
我的下一次尝试是从 index.html 中删除以下元标记
<meta http-equiv="Content-Security-Policy" content="default-src 'self' data: gap: https://ssl.gstatic.com; style-src 'self' 'unsafe-inline'; media-src *">
但这也没有帮助...
最佳答案
在 Cordova 设置上挣扎了好几个小时后,我仍然不确定我安装了什么白名单以及设置它的最佳方式是什么
但肯定对我有帮助的一件事是插入 Info.plist
(可能类似于 HelloWorld-Info.plist
)
以下标签
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>
之后我可以通过网络套接字连接或加载外部图像!
我希望这对其他人有帮助。
关于ios - Cordova 5.3.1 和 iOS9 平台 - 我无法从外部源加载图像和脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32667077/