一. Ajax是怎么在浏览器和服务器之间传递信息的?
通过XML数据或者字符串
- 在浏览器端如何得到服务器端响应的XML数据:
XMLHttpRequest对象的responseXML属性 - XMLHttpRequest对象在IE和Firefox中创建方式的不同之处?
- IE中通过new ActiveXObject()实例化一个xhr对象;
- Firefox中通过new XMLHttpRequest()实例化的;
二. XMLHttpRequest对象都有哪些常用方法和属性?
方法:
- open(“method”,”URL”);
- 建立对服务器的调用;
- 第一个参数
method
, 是HTTP请求方式
;- 可以为GET,POST或任何服务器所支持的您想调用的方式;
- 第二个参数是请求页面的URL地址,或者文件在服务器上的地址;
- send()方法,发送具体请求;
- 涉及到GET与POST的传参问题;
- abort()方法,停止当前请求,(不常用);
属性:
- readyState属性;
- 请求的状态有5个可取值:
- 0=未初始化 ;
- 1=正在加载;
- 2=已加载;
- 3=交互中;
- 4=完成;
- 请求的状态有5个可取值:
- responseText 属性 , 服务器的响应,返回的是一个串;
- reponseXML 属性, 服务器的响应,返回为XML格式;
- status属性,服务器的HTTP状态码,200代表ok, 404就是常见的not found-页面找不到;
三. 什么是XML?
因为Ajax中采用了xml技术,所以在Ajax中也可能问到XML的问题,之前问我都用过什么格式的数据,我说最常用的就是json格式,然后对方接着追问,换有没有其他的,我知道他想问xml,然而我只是了解,并不会,果断一句话带过,接着开始巴拉巴拉json,都特么让你问不会的,那还了得啊?
XML是扩展标记语言,能够用一系列简单的标记描述数据;
对于那些能把天聊死的HR,我也是只能默默的掏出我的屠龙刀了,放个大,果断跑,只要套路深,...
四. xml的解析方式?
常用的有dom解析和sax解析;
- dom解析是一次性读取xml文件并将其构造为DOM对象供程序使用;
- 优点是操作方便,但是比较耗内存;
- Sax是按
事件驱动
的方式解析的,占用内存少,但是编程复杂;
五. 说完优点,你不得说它有啥缺点,这样做人才比较完美?
- 最大的一点是页面无刷新,用户的体验非常好;
- 使用异步方式与服务器通信,具有更加迅速的响应能力;
- 可以把以前一些服务器负担的工作转嫁到客户端,利用客户端闲置的能力来处理,减轻服务器和带宽的负担,节约空间和宽带租用成本;
- 并且减轻服务器的负担,ajax的原则是“按需取数据”,可以最大程度的减少冗余请求,和响应对服务器造成的负担;
- 基于标准化的并被广泛支持的技术,不需要下载插件或者小程序;
ajax的缺点:
- ajax不支持浏览器back按钮;
- 安全问题 AJAX暴露了与服务器交互的细节;
- 对搜索引擎的支持比较弱;
- 破坏了程序的异常机制;
- 不容易调试;
Ajax最大的缺点?
Ajax最主要的缺点就是,它破坏浏览器后退按钮的正常行为
,也就是页面不能使用浏览器的goback返回键;