JSON和JSONP有什么区别?

可能重复:
请解释JSONP

例如在jQuery文档中,我发现提到了JSON和JSONP。 究竟有什么区别? 我怎么看到哪个是哪个? 哪一个应该用于什么?

PHP函数json_encode是什么产生的?


JSON是一种简单的数据格式。 JSONP是一种将这种格式与跨域Ajax请求结合使用,同时不会受到同源策略问题影响的方法。 基本上,这个想法是,不是使用ajax来请求JSON编码的数据,而是向页面添加一个脚本标记,将该数据加载为JavaScript脚本,并将代码回调为“这里是数据”。 这是有效的,因为应用于JavaScript脚本的“起源”是文档的起源,而不是脚本的来源,这意味着它可以访问您的代码以调用回调。

json_encode产生JSON。 如果您需要启用跨域呼叫,则可以使用json_encode作为为系统提供JSONP接口的一部分。

另请参阅CORS,它可能越来越多地用于此,而不是我们继续前进,但在IE中尚未得到很好的支持(IE7和以下根本没有它; IE8有它,但要求客户端代码做特别的事情; Chrome,Firefox等有它,并且不需要客户端代码做任何特殊的事情)。

链接地址: http://www.djcxy.com/p/8333.html

上一篇: What is the difference between JSON and JSONP?

下一篇: jQuery/JavaScript: accessing contents of an iframe