首页>>前端>>JQuery->jsonp为什么不是真正的ajax?

jsonp为什么不是真正的ajax?

时间:2023-12-25 本站 点击:0

json和jsonp的区别,ajax和jsonp的区别

指代不同 JSON:是一种轻量级的数据交换格式。JSONP:是JSON的一种“使用模式”,可用于解决主流浏览器的跨域数据访问的问题。

原因是jsonp的格式与json格式有着细微的差别,所以在server端的代码上稍稍有所不同。

JSON是结束,jSONP是手段。始终使用JSON,而JSONP仅用于跨域获取数据。在理解了jsnop与json数据格式的区别之后,事实上,AJAX中的跨域数据采集是很容易理解和实现的。

函数的参数,是服务端处理后的结果数据,以json格式直接写在脚本中。这也是jsonp得名的由来。

这里提到了JSONP,那有人就问了,它同JSON有什么区别不同和区别呢,接下我们就来看看,百度百科有以下说明:JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。

jsonp为什么不是真正的ajax

1、因为jsonp真的就是加载了javascript脚本而已啦。

2、json是一种轻量级的数据交换格式。jsonp是一种跨域数据交互协议。json的优点:(1)基于纯文本传递极其简单,(2)轻量级数据格式适合互联网传递,(3)容易编写和解析。

3、使用jquery的ajax的jsonp类型跨域请求数据、始终获取不到返回数据是设置错误造成的,解决方法为:创建基本的文件结构json_ajax.html和json_ajax.php,下载jquery.js。

4、注意一点是,这里是用Jsonp解决ajax的跨域问题,具体的实现其实不是ajax。同源策略浏览器有一个很重要的概念——同源策略(Same-Origin Policy)。所谓同源是指,域名,协议,端口相同。

5、这样其实jQuery AJAX跨域问题就成了个伪命题,jquery $.ajax方法名有误导人之嫌。如果设为dataType: jsonp,这个$.ajax方法就和ajax XmlHttpRequest没什么关系了,取而代之的则是JSONP协议。

6、这里提到了JSONP,那有人就问了,它同JSON有什么区别不同和区别呢,接下我们就来看看,百度百科有以下说明:JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。

JSONP怎么处理Ajax的跨域访问

实现方法有多种,本例采用jQuery+Ajax,完成后,在本地调试了一切ok,但是部署到服务器上以后就出现问题了,后台服务调用没有响应,怎么回事?代码没怎么改动,唯一修改的地方就是jQuery的ajax方法中的url地址。

一种是jsonp方式:即在前端发送异步请求时,添加相关的jsonp设置或配置;后端则返回可供jsonp解析的格式的串。

JSONP方式解决跨域:jsonp的原理就是利用了script标签不受浏览器同源策略的限制,然后和后端一起配合来解决跨域问题的。


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:/JQuery/59590.html