我正在开发一个需要跨域请求的Angular项目。除了IE9中的“访问被拒绝”错误外,一切正常。我做了研究并尝试了以下方法:
xhr-xdr-adapter.js:我按照他们的文档指示在jQuery之后和我的工厂之前包含它但是我在IE9控制台中得到了一个语法错误xhr-xdr-adapter.js(1,1)。
<!--[if lt IE 10]>
<script src="scripts/xhr-xdr-adapter.js" type="text/javascript"></script>
<![endif]-->
jquery.transport.xdr.min.js:这似乎没有做任何事情。我得到了相同的行为,好像它根本没有包含在内。
以下是我工厂的要求示例。我使用ajax和http的混合,具体取决于我发布的API。
PostSomething: function (_data) {
return $http({
url : 'url...',
method : 'POST',
contentType : 'application/json',
dataType : 'json',
data : JSON.stringify(_data)
})
},
PostSomethingElse: function (_data) {
return $.ajax({
type : 'POST',
url : 'url...',
dataType : 'json',
data : _data,
success : function (data) {
return data;
},
error : function (xhr, ajaxOptions, thrownError) {
return xhr;
}
})
},
2016年重拍这个问题的最佳方式是什么?