跨域AJAX请求不适用于IE10

时间:2014-08-11 16:02:35

标签: javascript php jquery ajax internet-explorer

我将'sub.example.com'的ajax请求发送到'www.example.com/api/lists'(是的,它是子域名),但它不仅仅适用于IE。它适用于FF,Chrome,Safari和其他移动浏览器。

错误讯息 - SEC7120: Access-Control-Allow-Origin不允许原点http://sub.example.com

我的服务器设置是

<?php
  header('Access-Control-Allow-Origin : *');
  header('Access-Control-Allow-Methods: GET, PUT, POST, DELETE, OPTIONS');
我试过两种方法。首先,jQuery.ajax();

$.ajax({
  url : 'http://www.example.com/api/lists',
  type : 'GET',
  dataType : 'JSON',
  cache : false,
  crossDomain : true
}).success(function(data){
  // do something
});

和导航javascript。

 var xhr = new XMLHttpRequest();
 xhr.open('GET', 'http://www.example.com/api/lists');
 xhr.send();

他们两个都不能只使用IE10浏览器。(尚未测试过IE10)

2 个答案:

答案 0 :(得分:4)

删除冒号和星号之间的空格。

更改

header('Access-Control-Allow-Origin : *');

header('Access-Control-Allow-Origin: *');

在正确的语法方面,Internet Explorer非常不灵活。

答案 1 :(得分:0)

您可能面临IE10 issue,而JQuery上的故障单已经closed,因为这是IE10本身的问题。

&#39;解决方法&#39;目前是设置兼容模式:

<meta http-equiv="x-ua-compatible" content="IE=9" >

通过与我联系的帖子也值得一读。