【发布时间】:2019-01-03 14:02:53
【问题描述】:
我正在使用 Cordova 开发一个混合应用程序来包装现有的 React Web 应用程序。
当我启动我的应用程序时,有时数据没有加载,我注意到 URL 使用 file:// 协议而不是 http://localhost:80803 并在末尾附加了一个感叹号。
我该如何解决这个问题?
请看下面的例子:
file:///api/metaData/!file:///sideNavigation/!
【问题讨论】:
-
也许您应该使用网址的确切完整路径?只需将
http://localhost:80803移动到变量中并添加到每个 url,如`${baseUrl}/api/metaData/` -
是的,或者在替代方案中去掉最后的斜线和感叹号。这些都是解决方法。我想找到根本原因。谢谢
-
你读过cordova-plugin-file吗?它似乎会影响您的应用程序。
-
@Dracontis 我没有使用那个插件。 Cordova 默认使用文件协议从设备文件系统获取资源/资产。以斜杠开头的相对路径默认为
file://,没有第三个斜杠,这会导致获取失败。解决方案 AFAIK 是为本地资源使用“./”前缀,为远程资源添加 http/https 前缀。 -
那么你应该发布一个答案并接受它。
标签: javascript reactjs cordova hybrid-mobile-app phonegap