Ajax详解(下)

一. 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=完成;
  • 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是按事件驱动的方式解析的,占用内存少,但是编程复杂;

五. 说完优点,你不得说它有啥缺点,这样做人才比较完美?

  1. 最大的一点是页面无刷新,用户的体验非常好;
  2. 使用异步方式与服务器通信,具有更加迅速的响应能力;
  3. 可以把以前一些服务器负担的工作转嫁到客户端,利用客户端闲置的能力来处理,减轻服务器和带宽的负担,节约空间和宽带租用成本;
  4. 并且减轻服务器的负担,ajax的原则是“按需取数据”,可以最大程度的减少冗余请求,和响应对服务器造成的负担;
  5. 基于标准化的并被广泛支持的技术,不需要下载插件或者小程序;

ajax的缺点:

  1. ajax不支持浏览器back按钮;
  2. 安全问题 AJAX暴露了与服务器交互的细节;
  3. 对搜索引擎的支持比较弱;
  4. 破坏了程序的异常机制;
  5. 不容易调试;

Ajax最大的缺点?

Ajax最主要的缺点就是,它破坏浏览器后退按钮的正常行为,也就是页面不能使用浏览器的goback返回键;

你可能感兴趣的:(Ajax详解(下))