PhoneGap相关协议问题

PhoneGap relative protocol issues

本文关键字:问题 协议 PhoneGap      更新时间:2023-09-26

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

因此,对于指向相关协议(如//foo.bar/api.js)的任何资产,PhoneGap应用程序将尝试获取file://foo.bar/api.js,当然这是不存在的。

我没有权限编辑API相关资产。我该如何解决这个问题?

最简单的方法可能是下载sdk,编辑它(就像添加协议一样),然后与应用程序一起交付。

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

但是,您可以获取所有的"script"标记,对它们进行迭代并检查src。如果src以"//"开头,则只需使用"http://" + element.src创建一个新的脚本节点即可正确加载它。你很可能需要暂停一段时间来运行它,这会让整个应用程序的速度减慢很多,如果我的同事做了这样的事情,我可能会打他,但你知道,这会奏效的;)

  • Ben