Ext.Ajax.request:外部URL不起作用?

时间:2011-12-12 22:41:52

标签: javascript sencha-touch extjs

我有这段代码来替换SenchaTouch Web App的ID:

function showRates() {
    Ext.Ajax.request({
        url: 'http://www.google.com',
        success: function(response, opts) {
            Ext.getCmp('card1').update(response.responseText);
        }
    });
};

如果我将url更改为像“ajax.html”这样的本地文件,它就可以工作。关于如何解决这个问题的任何想法?

2 个答案:

答案 0 :(得分:2)

请参阅:http://en.wikipedia.org/wiki/Same_origin_policy

您需要使用JSONP从外部服务器获取内容。

答案 1 :(得分:0)

Chrome / Safari浏览器不支持来自JavaScript的跨域Ajax调用。如果您正在进行移动开发,请尝试将包含所有源的应用程序打包到WWW / asserts文件夹中,然后使用Phone gap进行构建。它肯定会奏效。

希望你能得到我。请访问以下链接以获得清晰的图片。

cross-domain-ajax-requests-sencha-touch-bits

Cross-domain-Ext.Ajax-Ext.data.Connection