【问题标题】:PhoneGap: load data from external sourcesPhoneGap:从外部源加载数据
【发布时间】:2012-05-15 16:17:08
【问题描述】:

我想创建一个带有 phonegap 的网络应用程序(我正在尝试使用 Android 模拟器),但我遇到了“相同域策略”的问题:有什么方法可以禁用此限制。我需要从外部服务器加载 html/json 数据(不是我自己的,所以我不能修改它),但是当我尝试获取数据时,JQuery 返回一个未定义的对象。这是我的代码:

index.html

<!DOCTYPE html>
<html>
    <head>
        <meta charset="ISO-8859-1">
        <title>Title</title>
        <script type="text/javascript" src="js/jquery.min.js"></script>
        <script type="text/javascript">
            $.ajaxSetup ({
                cache: false
            });
            var ajax_load = "<img src='img/load.gif' alt='loading...' />";
            var jsonUrl = "external url";
                $("#result").html(ajax_load);
                $.getJSON(jsonUrl, function(json) {
                    var result = json.responseData;
                    $("#data").html("Result: " + result);
                });
        </script>
    </head>
    <body>
        <div id="data"></div>
    </body>
</html>

PhoneGapTestActivity

public class PhoneGapTestActivity extends DroidGap {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        super.loadUrl("file:///android_asset/www/index.html");
    }
}

网上搜索和阅读其他问题,我尝试在文件phonegap.xml

中设置白名单
<?xml version="1.0" encoding="UTF-8"?>
<phonegap>
    <access origin="*" subdomains="true" />
</phonegap>

但我得到的是:“结果:未定义”。 非常感谢!

编辑:经过多次尝试,我注意到请求有效(我收到了数据),但是在访问 json 数据内容时出现了一些问题,但现在它可以工作了!。 谢谢大家的回答。

【问题讨论】:

标签: javascript android cordova


【解决方案1】:

它没有理由不工作。我不是 jQuery 的大用户,但您可以设置一些东西来启用 CORS。

A CORS POST request works from plain javascript, but why not with jQuery?

【讨论】:

    【解决方案2】:

    试试这个.. 我不知道它在这种情况下是否有效,但它对我有用。

    &lt;?xml version="1.0" encoding="utf-8"?&gt;
    &lt;phonegap&gt;
    &lt;access origin="http://127.0.0.1*"/&gt;
    &lt;log level="DEBUG"/&gt;
    &lt;/phonegap&gt;

    【讨论】:

      【解决方案3】:

      经过多次尝试,我注意到请求有效(我收到了数据),但是在访问 json 数据内容时出现了一些问题。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-12-18
        • 1970-01-01
        • 1970-01-01
        • 2023-03-15
        • 1970-01-01
        • 2013-08-31
        • 2013-03-16
        • 1970-01-01
        相关资源
        最近更新 更多