jsonp和json区别—代码示例

jsonjiaocheng

温馨提示:这篇文章已超过239天没有更新,请注意相关的内容是否还可用!

jsonp和json区别—代码示例

JSONP(JSON with Padding)是一种跨域数据请求的解决方案。由于浏览器的同源策略限制,普通的AJAX请求不能跨域访问数据。而JSONP通过动态创建`<script>`标签,利用`<script>`标签的跨域访问特性,实现跨域请求数据的目的。

JSONP的原理是在客户端动态创建一个`<script>`标签,将需要请求的数据以回调函数的形式传递给服务器。服务器将数据包装在回调函数中返回,客户端通过回调函数获取数据。这样就实现了跨域请求数据的目的。

下面是一个JSONP的示例代码:

function handleResponse(data) {

console.log(data);

}

var script = document.createElement('script');

script.src = 'https://example.com/api/data?callback=handleResponse';

document.body.appendChild(script);

在上述代码中,我们定义了一个名为`handleResponse`的回调函数,该函数用于处理返回的数据。然后,通过动态创建`<script>`标签,将请求的URL设置为带有回调函数参数的形式。当服务器返回数据时,会将数据包装在回调函数中,然后客户端通过回调函数获取数据。

JSON(JavaScript Object Notation)是一种数据格式,用于存储和交换数据。它基于JavaScript的语法,但与JavaScript的对象字面量语法略有不同。JSON使用简洁的文本表示复杂的数据结构,易于阅读和编写,并且可以被多种编程语言解析和生成。

下面是一个JSON的示例代码:

{

"name": "John",

"age": 30,

"city": "New York"

}

在上述代码中,我们定义了一个包含姓名、年龄和城市的JSON对象。每个属性都由键和值组成,使用冒号分隔,属性之间使用逗号分隔。JSON的数据类型包括字符串、数字、布尔值、数组、对象和null。

JSONP是一种跨域数据请求的解决方案,通过动态创建`<script>`标签实现跨域请求数据的目的。而JSON是一种数据格式,用于存储和交换数据,它基于JavaScript的语法,易于阅读和编写。

文章版权声明:除非注明,否则均为莫宇前端原创文章,转载或复制请以超链接形式并注明出处。

取消
微信二维码
微信二维码
支付宝二维码