JavaScript JSON和JSONP有什么区别?

明智地设置格式,明智地使用文件类型以及明智地使用实用程序?

回答:

JSONP是带填充的JSON,也就是说,您将字符串放在开头,并在其周围加上一对括号。例如:

//JSON

{"name":"stackoverflow","id":5}

//JSONP

func({"name":"stackoverflow","id":5});

结果是您可以将JSON作为脚本文件加载。如果您之前设置了一个名为的函数func,那么在脚本文件加载完成后,将使用一个参数(即JSON数据)调用该函数。这通常用于允许带有JSON数据的跨站点AJAX。如果您知道example.com正在提供类似于上面给出的JSONP示例的JSON文件,那么即使您不在example.com域上,也可以使用类似的代码来检索它:

function func(json){

alert(json.name);

}

var elm = document.createElement("script");

elm.setAttribute("type", "text/javascript");

elm.src = "http://example.com/jsonp";

document.body.appendChild(elm);

以上是 JavaScript JSON和JSONP有什么区别? 的全部内容, 来源链接: utcz.com/qa/404611.html

回到顶部