【发布时间】:2015-08-20 00:00:47
【问题描述】:
我正在从 jquery 做 ajax 发布,这样我将调用属于不同域的两个休息服务来执行我的业务逻辑。在执行此操作时,我遇到了一个 CORS 问题,并且使用 google 引用,我在我的 ajax 中添加了 crossDomain: true 现在,只有当 ajax 中没有指定标题(如下所示)并且如果我添加标题时,这才完全正常工作,我得到以下错误。请指教。
$.ajax({
method : 'post',
dataType: 'json',
crossDomain: true,
headers : {
"country" : "us",
},
url : 'myurl.do',
async : true,
beforeSend : function() {
},
success : function(data) {
console.log('success', data);
},
error : function(request, status, error) {
console.log('Error!', status, error, request);
},
complete : function() {
console.log('Completed!!');
}
});
如果在Ajax中添加header会报错如下
“错误!” “错误”“”对象{ readyState:0,getResponseHeader:.ajax/jqXHR.getResponseHeader(),getAllResponseHeaders:.ajax/jqXHR.getAllResponseHeaders(),setRequestHeader:.ajax/jqXHR.setRequestHeader(),overrideMimeType:.ajax/jqXHR .overrideMimeType(), statusCode: .ajax/jqXHR.statusCode(), abort: .ajax/jqXHR.abort(), state: .Deferred/promise.state(), always: .Deferred/promise.always(), 然后: .Deferred/promise.then(),还有 11 个……}
【问题讨论】:
-
我还在响应标头中将 Access-Control-Allow-Origin 添加为 *。
标签: javascript jquery html ajax jsp