Ajax
一、同步交互与异步交互
1.同步交互是什么
同步交互是指发送一个请求,需要等待返回,然后才能够发送下一个请求。同步交互相当于排队,轮到下一个的情况会因为前一个而有所不同。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-X97MAs7s-1599389418829)(https://s1.ax1x.com/2020/08/31/dOtPbD.jpg)]
说明:同步交互就是第二次请求必须等待第一次请求结束之后才可以开始。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-HOImJAmq-1599389418831)(https://s1.ax1x.com/2020/08/31/dONEeU.jpg)]
同步交互:客户端向服务器端发送请求,必须等待结果返回,才能向服务器端发送下一次请求。
2.异步交互是什么
所谓的异步交互,就是指发送一个请求,不需要等待返回,随时可以再发送下一个请求。同步交互与异步交互的区别在于同步交互需要等待结果,而异步交互不需要等待。[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-95NdqcC6-1599389418833)(https://s1.ax1x.com/2020/08/31/dOURED.jpg)]
说明:异步交互就是第二次请求不需要等待第一次请求结束之后就可以开始。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6C7SGTNl-1599389418836)(https://s1.ax1x.com/2020/08/31/dONEeU.jpg)]
异步交互:客户端向服务器端发送请求,不必等待结果返回,就可以向服务器端发送下一次请求。
(1).异步交互的优势
异步交互相比同步交互的优势主要具有以下几点:
- 用户操作无须像同步交互必须等待结果。
- 异步交互只需与服务器端交换必要的数据内容,而不是将所有数据全部更新。
- 异步交互对带宽造成的压力相比同步交互更小。
- 通过Ajax实现异步交互不需要任何第三方插件,只要刘览器支持JavaScript语言即可实现。
(2).异步交互的劣势
异步交互相比同步交互并不是优势,它也存在一些问题:
- 异步交互破坏了浏览器原有的前进和后退机制。
- 如果后面逻辑的执行依靠前面逻辑执行的结果的话,异步交互可能会造成问题。
- Ajax实现异步交互对搜索引擎支持较弱。
- Ajax实现异步交互会引起一些Web安全问题,例如 SQL 注入攻击、跨站点脚本攻击等问题。