我正在尝试使用jQuery / AJAX创建跨域请求。我有以下代码;
$.ajax({
url: "http://www.cjihrig.com/development/jsonp/jsonp.php?callback=jsonpCallback&message=Hello",
crossDomain:true
})
.done(function( msg ) {
alert( "Done : " + msg );
})
.fail(function( msg) {
alert( "Fail : " + msg);
})
.always(function( msg ) {
alert( "Always : " + msg );
});
URL http://www.cjihrig.com/development/jsonp/jsonp.php?callback=jsonpCallback&message=Hello在直接调用时返回JSON对象,并且在以传统方式使用JSONP时工作正常(即通过动态脚本标记注入)
但是为什么在与jQuery / AJAX一起使用时会出现错误?
答案 0 :(得分:1)
尝试此代码,因为错误未设置为dataType,并且不期望jsonp默认为
dataType:(默认值:Intelligent Guess(xml,json,script或html))
输入:字符串
$.ajax({
url: "http://www.cjihrig.com/development/jsonp/jsonp.php?callback=jsonpCallback&message=Hello",
dataType: 'jsonp',
crossDomain:true,
jsonp: false,
success: jsonpCallback,
})
.done(function( msg ) {
alert( "Done : " + msg );
})
.fail(function( msg) {
alert( "Fail : " + msg);
})
.always(function( msg ) {
alert( "Always : " + msg );
});
function jsonpCallback(data){
alert("jsonpCallback");
}
答案 1 :(得分:0)