【发布时间】:2018-12-14 10:58:25
【问题描述】:
在 Cordova iOS 应用程序中从 UIWebView 切换到 WKWebView 时,从本地文件系统加载 Web 应用程序时,同源策略存在常见的已知问题。
典型的解决方法是使用本地 Web 服务器(监听 localhost),它为您的 HTML、CSS、JS 提供服务。
这就是我尝试切换到这个 cordova 插件的原因: https://github.com/apache/cordova-plugins/tree/wkwebview-engine-localhost
不幸的是,结果是一个空白屏幕。在我调用的 Web 调试控制台中
console.log(location.href)
返回about:blank。然后我尝试从控制台使用这个 JS 调用导航到本地 Web 服务器:
location.href = 'http://localhost:8080';
但是网络视图停留在about:blank。我还尝试了不同的端口,当然我检查了我的config.xml(例如<allow-navigation href="*" />)
我认为插件有问题,所以我切换到Ionic Webview。有趣的是,它具有完全相同的行为。
一般来说,我可以导航到其他站点,但不能导航到localhost:[port],所以我猜这些插件根本无法启动 Web 服务器。但是,我找不到其他人遇到这个问题。
这个问题的原因可能是什么?有没有办法调试这个?不幸的是,我的网络控制台没有报告任何问题。
【问题讨论】:
标签: ios cordova ionic-framework wkwebview