传统http请求、ajax请求、jsonp请求

传统http请求

传统的http请求,服务器会返回一个HTML网页,数据就保存在网页中,浏览器接受到数据需要刷新整个页面。

ajax请求

ajax请求(Asynchronous JavaScript and XML)收到的结果是json或者xml数据,而且如果需要更新数据,不需要刷新整个页面。从而实现了浏览器的快速响应。

AJAX异步请求的原理和过程
AJAX请求和普通HTTP请求区别

jsonp请求

ajax请求是存在跨域无法访问的问题的,需要通过设置代理来进行跨域访问。
但是jsonp请求解决了Get类型 ajax请求的跨域问题,其实jsonp请求就是一般的请求。
1.在我们在前端页面中要请求后端服务器中的数据,因为浏览器的安全措施,只能请求相同域名下的访问,跨域请求可以通过设置代理的方式实现。
2.但是在使用普通的img标签获取网络中的图片的时候,我们发现跨域是可以访问的,就向下面这样,jsonp请求就是用了这样的原理。

<img src="https://ss0.bdstatic.com/5aV1bjqh_Q23odCf/static/superman/img/logo/bd_logo1_31bdc765.png">

3.重点来了,那jspon的基本原理是什么呢?
前端发送请求的时候会提供一个叫callback(回调函数)的参数给后端服务器,后端收到请求会返回一个函数调用的语句,而返回的数据作为函数的参数传递进去。前端收到数据之后会执行这个回调函数,这样就实现了数据请求。
了解更多jsonp请求:
JSONP跨域请求原理及示例
Jsonp请求

猜你喜欢

转载自blog.csdn.net/qq_44606064/article/details/115371245