2019面试题:简单介绍下Ajax

首先Ajax是Asynchronous JavaScript and XML的全称,Asynchronous是异步的意思,这跟传统的web不同。Ajax是Web2.0技术的核心由多种技术集合而成,使用Ajax技术不必刷新整个页面,只需对页面的局部进行更新,可以节省网络带宽,提高页面的加载速度,从而缩短用户等待时间,改善用户体验。

什么是同步?什么是异步?

同步是发送方发送数据之后,必须等接收方接收数据做出回应之后,才可以进行下一步。 异步则是发送方发送数据之后不需等接收方做出回应,可以进行下一步操作。

直白地说,就是没用Ajax的网页,你点一个按钮就要刷新一下页面,尽管新页面上只有一行字和当前页面不一样,但你还是要无聊地等待页面刷新。用了AJAX之后,你点击,然后页面上的一行字就变化了,页面本身不用刷。 Ajax只是一种技术,不是某种具体的东西。不同的浏览器有自己实现AJAX的组件。我们传统的web应用,当我们提交一个表单请求给服务器,服务器接收到请求之后,返回一个新的页面给浏览器,这种做法浪费了很多带宽,因为我们发送请求之前和获得的新页面两者中很多的html代码是相同的,由于每次用户的交互都需要向服务器发送请求,应用的访问时间取决于服务器的返回时间。而我们使用Ajax就不同了,Ajax只取回一些必须的数据,它使用SOAP、XML或者支持json 的Web Service接口,我们在客户端利用JavaScript处理来自服务器的响应,这样客户端和服务器之间的数据交互就减少了,然后用户请求就得到了加速。Ajax是多种技术的组合,包括我们JavaScript异步数据获取技术,就是XMLHttpRequest以及xml以及Dom还有表现技术XHTML 和CSSAjax的核心是XMLHttpRequest 是支持异步请求的技术,可以发送请求给服务器,并且不阻塞用户在IE浏览器中首次引用,使我们的网络应用更加强大。其实XMLHttpRequest是JavaScript的一种语法子集,是它的一套API,支持发送GET和POST请求。该API是Ajax开发的核心,也是现在web技术的核心之一。通过这些技术,我们无序重新加载网页就可以发送和取回数据,完成交互。

Ajax优点:

1.无刷新更新数据,减少用户等到时间,更好的用户体验。

2.异步与服务器通信,无需打断用户,响应更加迅速。

3.把服务器的一些负担转到客户端,利用客户端闲置的能力来处理,减轻服务器和带宽的负担,节约空间和宽带租用成本。

4.Ajax的原则是“按需取数据”,可以最大程度的减少冗余请求和响应对服务器造成的负担,提升站点性能。

5.基于标准化,广泛被支持。

Ajax缺点:

1.破坏了前进后退功能,用户往往通过后退按钮来取消上一步操作,但是使用ajax无法实现。可以使用Gmail来解决这个问题,它只是采用的一个比较笨但是有效的办法,即用户单击后退按钮访问历史记录时,通过创建或使用一个隐藏的IFRAME来重现页面上的变更。

2.安全问题。ajax的逻辑可以对客户端的安全扫描技术隐藏起来,允许黑客从远端服务器上建立新的攻击。还有自身受到如跨站脚本攻击,SQL注入等攻击。

3.对搜索引擎支持较弱。

4.一些手持设备不能很好的支持等。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

扫码关注云+社区

领取腾讯云代金券