在html5 phonegap app中获取httprequests(跨域?)

时间:2012-07-11 12:20:50

标签: html5 jquery-mobile cordova

我正在html5 w / jquerymobile构建一个半动态应用程序,目标为atm。是iOS开始。 但问题是我需要使用(请求)标头参数联系web服务,这是不可行的。

我的问题可能非常简单,但由于我正在开发netbeans,我遇到了无法从跨域获取数据的问题。

(说到点)。在phonegap / {非原生“离线”应用}中。我如何设置域/是否有使用headerparams进行http get / post请求的解决方法?

1 个答案:

答案 0 :(得分:2)

如果您使用的是Phonegap,则Web应用程序将运行file://协议,并且不受跨域限制的约束。

编辑: 如果您使用的是jQuery Mobile和Phonegap,则需要将$.support.cors$.mobile.allowCrossDomainPages设置为true。

来自jQueryMobile docs

由于jQuery Mobile依赖于jQuery核心的$ .ajax()功能,因此$ .support.cors必须设置为true才能告诉$ .ajax加载跨域页面。我们听说过某些平台上的网页浏览(如BlackBerry)支持跨域加载,但jQuery核心错误地将$ .support.cors值设置为false,这会禁用跨域$ .ajax()请求并导致页面或资产无法加载。

    $(document).bind( "mobileinit", function(){
        $.support.cors = true;
        $.mobile.allowCrossDomainPages = true;       
    });