2012-05-03 16 views
0

当我试图将phonegap 1.0.0升级到phonegap 1.1.0,我所有的jQuery Ajax都无法调用外部网站url 。Phonegap v1.0.0到v1.1.0:ajax查询与外部域返回错误,而不使用'ExternalHosts'

我有一个phonegap 1.0.0和jquerymobile 1.0.0的应用程序(iOS和Android),他们调用web服务来获取一些网站的URL列表以用于此应用程序。这些URL用jquery ajax调用,它们返回这些网站的html代码。 所有与phonegap 1.0.0完美合作。

更新phonegap v1.1.0后,所有调用这些网站URL的ajax查询都返回了readystate = 4的错误。

我发现这个解决方案: 如果我把域主机放在phonegap.plist的“ExternalHosts”中,ajax查询已经返回这个域的html代码。

但对我来说不是一个好的解决方案,因为我的web服务恢复的URL列表每天都可以更改。我无法每天在phonegap.plist的“ExternalHosts”中使用新域名创建新应用程序。

PhoneGap(下一个1.0.0)的所有新版本是否需要使用“ExternalHosts”修复ajax查询(调用外部网站url)?

有人在最新的Phonegap版本上测试了带外部网站网址的ajax查询吗?

的那一刻我就降级我的1.0.0版本的PhoneGap .... :-(

谢谢你的帮助。

+0

为什么要升级到旧版本? PhoneGap的当前版本是1.7:http://phonegap.com/download-thankyou – Jasper

回答

0

有描述的步骤将jQuery Mobile的文档上一节创建与jQuery Mobile的一个PhoneGap的应用程序时,需要:http://jquerymobile.com/demos/1.1.0/docs/pages/phonegap.html

基本上整个页面良好的信息(否则我会复制的特定文本)

+0

我不必把代码:$ .mobile.allowCrossDomainPages = true;在我的应用程序中使用PhoneGap 1.0.0 – user1361189

+0

在Cordova用户指南v1.7中: “要从1.3.0升级到1.6.x,请首先转到1.4.0说明,然后是1.5.0,然后是1.6.x,然后1.7.0“ 我在1.0.0,你觉得我可以跳上v1.7没有像指导说的一步一步走? – user1361189

+0

对于你的第一个评论,我没有1.0的问题,但事情可以改变。给你的第二个评论。你有太多的版本,我会在你的IDE中创建一个新的应用程序,并将源代码从旧的应用程序复制到新的应用程序,但使用新版本的PhoneGap。 – Jasper

1

如果你不知道所有的主机,你的应用程序可能会连接到那么你会想在你的.plist中使用“*”通配符作为“ExternalHosts”。