jquery ajax跨域报错
代码如下:
$.ajax({
type : "get", //jquey是不支持post方式跨域的
async:false,
url : "http://api.taobao.com/apitools/ajax_props.do", //跨域请求的URL
dataType : "jsonp",
//传递给请求处理程序,用以获得jsonp回调函数名的参数名(默认为:callback)
//jsonp: "jsoncallback",
//自定义的jsonp回调函数名称,默认为jQuery自动生成的随机函数名
jsonpCallback:"test",
//成功获取跨域服务器上的json数据后,会动态执行这个callback函数
success : function(json){
alert(json);
}
});
错误如下:
Resource interpreted as Script but transferred with MIME type text/html: "http://api.taobao.com/apitools/ajax_props.do?callback=test&_=1392519201918". jquery.js:4
Uncaught SyntaxError: Unexpected token : ajax_props.do:2
求大神们指点……
------解决方案--------------------例子
http://my.oschina.net/duwaiweb/blog/80576
------解决方案--------------------你先要弄清楚 jsonp 是什么?如何工作的
jsonp 是通过 script 标记来与服务端交流的
既然是 script 标记,那么服务端返回的就应该是合法的 js 语句
但是 http://api.taobao.com/apitools/ajax_props.do?callback=test&_=1392519201918 返回的是一个 json 格式的串,而不是 js 语句,因此就不能通过 js 语法检查
也就无法继续工作了