简体   繁体   English

为什么jQuery ajax(JSONP)在没有`&callback =`的情况下工作,但是在`&callback = functionname`的情况下失败?

[英]Why does jQuery ajax (JSONP) work without `&callback=` but fails with `&callback=functionname`

I need to do a JSONP call. 我需要进行JSONP调用。

Ajax function call : Ajax函数调用:

$.ajax({
    url: myPath,
    dataType: 'jsonp',
    success: function(data) {
        alert("hello"); 
    }
});

getJSON function call : getJSON函数调用:

$.getJSON(myPath + '&callback=prova?', function(data) {
    alert("hello");
});

with getJSON (using &callback=prova for setting JSONP protocol) I get an error 200. .ajax() works as well. 使用getJSON(使用&callback = prova设置JSONP协议)时出现错误200。.ajax()也可以工作。 Why? 为什么? I want to use getJSON here... 我想在这里使用getJSON ...

You should use callback=? 您应该使用callback=? and not callback=prova? 而不是callback=prova? if you want your request to be treated as JSONP: 如果您希望将请求视为JSONP:

$.getJSON(myPath + '&callback=?', function(data) {
    alert("hello");
});
​

Try this 尝试这个

$.getJSON(myPath + '?callback=prova', function(data) {
    alert("hello");
});

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM