小编典典

跨域Ajax请求在Opera和IE9中不起作用?

ajax

我正在使用此页面-http :
//ecmazing.com/cors.html-向此资源发出跨域Ajax请求:http
//hacheck.tel.fer.hr/xml.pl

它适用于Chrome,Safari和Firefox,但不适用于IE9和Opera。

代码:

var pdata = {'textarea': 'test'};

$.post('http://hacheck.tel.fer.hr/xml.pl', pdata, function(data, status, xhr) {
    output.value = xhr.responseText;
});

(预期结果是XML代码字符串。)

自己看看: http
//ecmazing.com/cors.html

在IE9和Opera中,将error执行XHR对象的处理程序,并将此错误对象传递给:

{
    readyState: 4,
    status: 0,
    statusText: 'error'
}

如您所见,此错误对象没有显示太多信息。

如何使它在IE9和Opera中工作?


阅读 300

收藏
2020-07-26

共1个答案

小编典典

有关详细信息,请参见whencaniuse

对于Internet Explorer,CORS是“使用XDomainRequest对象在IE8和IE9中有所支持”,因此您需要使用备用对象来使用它。

Opera根本不支持它。

如果您需要Opera中的跨域Ajax,请使用JSON-P。

2020-07-26