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

时间:2017-11-11 16:45:21

标签: javascript ajax jsonp

请帮助从远程服务器获取jsonp-data:

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浏览器标签'网络'显示200状态和正确的json响应

1 个答案:

答案 0 :(得分:1)

如果您查看src网址返回的内容,您会看到它是JSON而不是JSONP。如果它是JSONP你的​​src应该是:

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

并且它将返回的数据将包装为:

readresponse({...})

而不仅仅是

{...}

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

您可以阅读this post了解有关此主题的更多信息。