从javascript进行http调用时出现故障

时间:2012-05-17 13:37:33

标签: javascript web-services httpwebrequest sencha-touch

我正在使用GET请求通过http访问网址。我正在使用下面的代码。

onReady: function() {

        var makeAjaxRequest = function() {


        var myUrl = encodeURI('http://domainname/VW-MAPP/fgnwasxuyu/10548168/2012-04-11 12:42:36/5555');
    Ext.Ajax.request({

        method: 'get',
    url:  myUrl,

    success: function(response)      {     
    alert(''+response.responseText);     
    console.log("response:-"+response.responseText);      },     
    failure: function (response)      {     
    console.log("Failure");    
    console.log("response status:-"+response.status);
    alert("Failure");
}
            });
        };



        new Ext.Panel({
            fullscreen: true,
            id: 'content',
            scroll: 'vertical',
            dockedItems: [{
                xtype: 'toolbar',
                dock: 'top',
                items: [{
                    text: 'XMLHTTP',
                    handler: makeAjaxRequest
                }]
            },{
                id: 'status',
                xtype: 'toolbar',
                dock: 'bottom',
                title: "Tap a button above."
            }]
        });
    }
});

我尝试了很多但是低于错误

XMLHttpRequest无法加载// URLNAME //。 Access-Control-Allow-Origin不允许使用null。

如果有任何想法,请提供帮助。

由于

2 个答案:

答案 0 :(得分:2)

同源策略内置于浏览器中,阻止您向除提供当前页面的域之外的任何其他域进行AJAX调用。

如果响应是JSON,则可以使用JSON-P方法,否则需要服务器端代理才能进行此调用。

答案 1 :(得分:0)

我尝试了两种方法

(1)将response.xml转储到本地域并访问,我们取得了成功。

(2)通过命令chrome.exe --allow-file-access-from-files --disable-web-security禁用谷歌浏览器安全性,并且能够通过GET方法点击网址并获得成功。