0

我正在开发一个 Web 单页应用程序,它大量使用 ajax 请求并在桌面浏览器中正常工作。但是当我把它放在 XCode 中的 cordova 包装器中并在模拟器或 iPhone 上再次运行它时,出于某种原因,而不是像http://myhost:3000/api/login我看到的那样的请求file:///api/login,显然它失败了。可能是什么原因?

4

1 回答 1

0

PhoneGap 应用程序在file:页面上运行,请求可能是针对绝对路径的/api/login,因此绝对路径解析为file:///api/login.

我假设您的代码以前在一个http://myhost:3000页面上运行,其中绝对路径解析为http://myhost:3000/api/login.

如果要向 PhoneGap 中的主机发出请求,则必须在路径中明确指定主机。要允许 Ajax 访问主机,您可能需要明确地将其列入白名单。

于 2013-06-06T16:12:29.440 回答