Ajax及其应用

1.1   AJAX工作原理

AJAX全称为Asynchronous JavaScript and XML(异步JavaScript和XML技术),通过ajax可以在浏览器中向服务器发送异步请求,最大优势:无需刷新获取数据。ajax不是新的编程语言,而是一种将现有的标准组合在一起使用的新方式。

AJAX向HTTP发送请求包括请求行

请求头

请求体

 请求的资源就是URL的地址,请求的方式有GET,HEAD,POST,浏览器向服务器发送的内容称之为请求,客户端给浏览器返回的结果称之为相应

1.2对XMLHttpRequest对象的属性

(1)responseText

默认值为空字符串 ""。只有当 responseType 为 text""时,xhr 对象上才有此属性,此时才能调用 xhr.responseText ,否则抛错。只有当请求成功时,才能拿到正确值。以下 2 种情况下值都为空字符串 "":请求未完成、请求失败。

(2)responseXML

默认值为 null。只有当 responseType 为 text""document时,xhr 对象上才有此属性,此时才能调用 xhr.responseXML,否则抛错。只有当请求成功且返回数据被正确解析时,才能拿到正确值。以下 3 种情况下值都为 null :请求未完成、请求失败、请求成功但返回数据无法被正确解析时。

(3)status 和 statusText
status 属性表示 HTTP 响应状态码,如 200302400等。
statusText 属性表示 HTTP响应状态的描述文本,如 OKNot Found等。

(4)onreadystatechange事件
        无论readyState值何时发生改变,XMLHttpRequest对象都会激发一个readystatechange事件。其中,onreadystatechange属性接收一个EventListener值-向该方法指示无论readyState值何时发生改变,该对象都将激活。

1.3对XMLHttpRequest对象的方法

(1)open方法

open(method,url, async, username, password) 用来进行初始化工作。返回值:得到一个包含send()方法的对象。method:必须。用于指定HTTP请求方法,支持所有HTTP的方法,如GET,POST,head。uri:请求的服务器的地址,自动解析成绝对地址。async:请求是否异步,true表示你异步,false表示同步,默认为true。username,password:可以不指定,分别表示用户名和密码,提供HTTP认证机制需要的用户名和密码。调用open后,readystate状态为1。

(2)abort()方法

该方法可以暂停一个HttpRequest请求或者HttpResponse的接收,并且将XMLHttpRequest的状态设置为初始化。

(3)send()方法:

在调用oepn()方法准备好一个请求后,还需要把该请求发送到服务器,这时就需要调用send()方法。send()方法中包含了一个可选的参数,该参数可以包含可变类型的数据。

(4)setRequestHeader(DOMString Header,DOMString value)方法:

该方法用来设置请求的头部信息,该方法的调用必须在调用open()方法之后。

(5)getResponseHeader(DOMString header)方法:

该方法用来得到首部信息,其中header参数表示要得到的首部。该方法仅当readyState值是3或4时才可调用,否则会返回一个空字符串。

XMLHttpRequest对象的使用需要四个步骤:

(1) 初始化XMLHttpRequest对象

(2) 指定响应处理函数

(3) 发送HTTP请求

(4) 处理服务器返回的信息

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值