我正在尝试使用jquery作为我的代码调用跨域休息服务:
$.ajaxSetup({ scriptCharset: "utf-8" , contentType: "application/json; charset=utf-8"});
var newUrl = "http://127.0.0.1:1338/app?restUrl=" + encodedURL; //dynamic url
$.getJSON(newUrl, function(result){
//response data are now in the result variable
alert("inside");
alert(result);
});
但是当我尝试在mozilla中执行时,我在Firebug中收到此错误。
XML解析错误:找不到元素位置:moz-nullprincipal:{f8dedba7-d539-45da-a5aa-53d5ae919084}第1行,第1列:
但我在Firebug中获得的状态为:
获取http://localhost:1338/app?restUrl=http://localhost:9090/Bank2/service/helloRest/greet
200 OK 6ms的 jquery.min.js(第18行)
由于该错误,我无法在getJson中获取警报。有人可以指导我吗?
答案 0 :(得分:1)
因为它是跨域的,所以您可能必须使用JSONP
如果您在firebug中收到上述错误,则很可能会发出不允许的跨浏览器请求,并且您的响应中没有无效的XML。除非您使用jsonp或脚本作为数据类型,否则不允许跨浏览器请求。