PhoneGap相关协议问题

时间:2015-02-04 11:48:51

标签: javascript android cordova phonegap-build

我有一些用于API(SoundCloud)的Javascript,我将其远程加载到我的PhoneGap应用程序中,使用相对协议的任何资产都存在明显问题,因为PhoneGap将使用file://

因此,对于指向相对协议的任何资产,例如 //foo.bar/api.js ,PhoneGap应用会尝试获取 file://foo.bar/api.js ,当然不会存在。

我无权修改API相关资产。我该如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

最简单的方法可能就是下载sdk,编辑它(就像添加协议一样),然后将它与你的App一起发送。

据我所知,你不能只改变location.protocol属性来使其工作,所以其他一切都会很糟糕,所以你应该坚持第一个解决方案。

然而,你可以得到所有"脚本"标签,迭代它们并检查src。如果src以" //"开头您只需使用"http://" + element.src创建一个新的脚本节点即可正确加载它。你最有可能需要稍微超时运行它,这会使整个应用程序放慢一点,如果我的同事会这样做,我可能会打他,但你知道,它会工作;)