Ajax是2005年2月才诞生但是现在已经炙手可热的一项全新技术.这项新技术能够极大地改善网站的用户体验.
什么是Ajax
Ajax是异步Javascript和XML(Asynchronous JavaScript and XML)的英文缩写.
Ajax的核心理念在于使用XMLHttpRequest对象发送异步请求.Ajax并不是一门新的语言或技术,它实际上是几项技术按一定的方式组合在一起,共同的协作中发挥各自的作用.
Ajax的优点
1.减轻服务器的负担.Ajax的原则是"按需取数据".
2.无需刷新页面,减少用户心理和实际的等待时间.
3.带来更好的用户体验.
4.可以把以前一些服务器负担的工作转移到客户端,利用客户端闲置的能力来处理,减轻服务器负担,充分利用宽带资源,节约空间和宽带租用成本.
5.可以调用外部数据.
6.基于标准化的并被广泛支持的技术,不需要下载插件或者小程序.
7.进一步促进页面呈现与数据分离.
Ajax核心对象是XMLHttpRequest,它可以提供不重新加载页面的情况下更新网页,在页面加载后在客户端向服务器请求数据,在页面加载后在服务器端接受数据,在后台向客户端发送数据
二.XMLHttpRequest对象介绍
Ajax的一个最大的特点是无需刷新页面便可向服务器传输或读写数据(又称无刷新更新页面),这一特点主要得益于XMLHTTP组件XMLHttpRequest对象.
XMLHttpRequest属性
XMLHttpRequest对象的属性
属性 | 描述 |
onreadystatechange | 每个状态改变时都会触发这个事件处理程序,通常会调用一个JavaScript函数 |
readyState | 请求的状态 |
responseText | 服务器的响应,表示为一个串 |
responseXML | 服务器的响应,表示为XML,这个对象可以解析为一个DOM对象 |
status | 服务器的HTTP状态 |
statusText | HTTP状态的对应文本 |
每个状态改变时都会触发这个事件处理程序,通常会调用一个JavaScript函数
XMLHttpRequest方法
XMLHttpRequest对象的一些常用的方法
方法 | 描述 |
abort() | 停止当前请求 |
getAllResponseHeaders() | 把HTTP请求的所有相应首部作为键/值对返回 |
getResponseHeader("header") | 返回指定首部的串值 |
open("method","url") | 建立对服务器的调用.method参数可以是GET,POST或PUT等;url参数可以是相对URL或绝对URL.这个方法还包括3个可选参数 |
send(content) | 向服务器发送请求 |
setRequestHeader("header","value") | 把指定首部设置为所提供的值,在设置任何首部之前必须先调用open()方法 |