jQuery.ajax({
type: "POST",
async:false,
url: restURL,
data: params,
crossDomain: true,
headers: { "Authorization": "Basic " + 'aaa'},
success: function(respXML) {
alert("doing stuff");
},
error : function(respXML){
alert("doing stuff");
},
dataType: "text"
});
答案 0 :(得分:1)
<强>原理强>
跨域ajax请求仅适用于GET请求和jsonp通信技术。 当您通过jsonp发送ajax请求时,它会在GET url中写入callback参数并将其发送到您的服务器脚本。您的脚本始终必须返回此calback
来自jquery ajax说明
“jsonp”:使用JSONP加载JSON块。添加额外的“?callback =?”到URL的末尾以指定回调。
如果要在同一域上强制执行跨域请求(例如JSONP),请将crossDomain的值设置为true。例如,这允许服务器端重定向到另一个域
jQuery.ajax({
async:false,
url: restURL,
dataType: 'jsonp',
data: params,
crossDomain: true,
headers: { "Authorization": "Basic " + 'aaa'},
success: function(respXML) {
alert("doing stuff");
},
error : function(respXML){
alert("doing stuff");
},
});
答案 1 :(得分:0)
如果它只是IE,那么我建议为jQuery启用cors以允许交叉原始请求,如下所示:
jQuery.support.cors = true;
在致电.ajax之前。在我使用jquery.ajax的经验中,它比大多数域的执行更严格。