如何从远程服务器获取 jsonp?

How get jsonp from remote server?

请帮助从远程服务器获取 jsonp 数据:

document.addEventListener("DOMContentLoaded", function() {
    function readresponse(response){
        console.log(response);
    }
    (function(){
        var src = 'http://json-schema.org/draft-04/schema#?callback=readresponse';
        var script = document.createElement('SCRIPT');
        script.src = src;
        document.body.appendChild(script);
    })();   
});

但是 chrome 浏览器选项卡 'network' 显示 200 状态并正确 json 响应

如果您查看您的 src url 正在 returning 的内容,您会发现它是 JSON 而不是 JSONP。如果它是 JSONP 你的 src 应该是:

var src = 'http://json-schema.org/draft-04/schema&callback=readresponse'

它将 return 的数据包装为:

readresponse({...})

而不仅仅是

{...}

这就是您收到解析错误的原因。


您可以阅读 this post

了解有关此主题的更多信息