当我在控制台中写字时:
ionic serve
它在端口8100启动本地服务器,我的OpenID Connect身份验证登录流程正常工作,但是当我开始时:
ionic prepare ios
从XCode启动项目,我的JavaScript window.location.href
的值为file:///Users....
而不是http://localhost:8100/
有没有解决方法呢?或者它无法通过设计解决?
答案 0 :(得分:0)
通过localhost服务:
安装插件:
cocoon-cordova-labs-local-webserver
cordova-plugin-wkwebview-engine
在config.xml
添加
<feature name="CDVWKWebViewEngine">
<param name="ios-package" value="CDVWKWebViewEngine" />
</feature>
<preference name="CordovaWebViewEngine" value="CDVWKWebViewEngine" />
安装插件后,它会通过修改此标记来更改项目根目录中的config.xml
:
<content src="http://localhost:0" />
要启动本地Web服务器,网址必须为http://localhost
,并且您可以将端口设置为您想要的网址,本地Web服务器将自动将其用作端口。如果将端口设置为“0”,它将选择一个随机和自由端口。
如果您打算使用HTML5 localStorage和/或IndexedDB,则必须在上面指定的内容标记中选择固定端口。这是因为HTML5 Origin策略(方案,域和端口必须相同)。
在项目根目录的config.xml中,将“0”端口更改为1到49152之间的数字(避免iOS上的短暂端口范围49152到65535)。例如:
<content src="http://localhost:49000" />
此端口号必须在所有应用程序启动时保持一致,才能访问已保存的数据。