参考资料: XMLHttpRequest Level 2 使用指南—阮一峰
之前分析面试常被问的跨域问题,另一个面试难题就是ajax原理相关的问题了,今天我们就来solve它。
开篇先来介绍一个之前看过的一篇文章,讲的是如何回答面试中的原理题,我们也可以把以下的这种方法运用到学习前端知识上面。
回答原理题流程:
现在我们正式开始了解XMLHTTPRequest对象,顾名思义:是基于XML的HTTP请求。XMLHttpRequest是一个浏览器接口,使得Javascript可以进行HTTP(S)通信。自从浏览器提供有了XMLHTTPRequest这个接口之后,ajax操作就此诞生。
我们再来说说什么是AJAX,AJAX = Asynchronous JavaScript and XML,翻译为:异步的 JavaScript 和 XML。ajax就是基于浏览器提供的XMLHttpRequest对象来实现的。这下明白他们的关系了吧。
传统的网页(不使用 AJAX)如果需要更新内容,必需重载整个网页面。自从有了ajax之后,我们就可以实现异步的加载网页。
什么叫异步?
异步,异嘛,不同的意思,这里也就是指不跟浏览器加载执行网页代码的步伐一致,也就是说在一个网页中需要用户操作来触发执行代码,而不是整个网页代码一次性执行完毕。(这里的用户操作是指在同一个网页下面请求代码执行渲染,而不是让浏览器直接跳转渲染另一个页面)
AJAX 工作原理:
这里面都提到了一个概念XML,那什么是XML呢?
XML 指可扩展标记语言(eXtensible Markup Language)。
我们在浏览器中使用XMLHTTPRequest对象在服务器之间通信,传输的数据是使用XML的方式,但最终还是会被转换成json数据格式来被我们使用。
我们再来看看XHR的使用流程:
var xhr = new XMLHttpRequest();
<< · Back Index ·>>
上一篇
下一篇
企管知識-開始閱讀車間管理(Workshop management)是指對車間所從事的各項生產經營活動進行計劃、組織、指揮、協調和控制的...