Java开发之Ajax异步请求

Ajax简介

Ajax:(Asynchronous JavaScript And XML)只刷新局部页面的技术。

它不是一种新的编程语言,而是一种用于创建更好更快以及交互性更强的 Web 应用程序的技术,是基于JavaScript、XML、HTML、CSS新用法。

Ø JavaScript:更新局部的网页

Ø XML:一般用于请求数据和响应数据的封装

Ø XMLHttpRequest对象:发送请求到服务器并获得返回结果

Ø CSS:美化页面样式

Ø 异步:发送请求后不等返回结果,由回调函数处理结果

使用场景:

a) 搜索

b) 地图

c) 校验

d) 获取数据

2. Ajax交互模型

Ø 传统web交互方式

Ø Ajax的交互方式

3. 关键技术点

Ø XMLHttpRequest对象

XMLHttpRequest 用于在后台与服务器交换数据。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。所有现代浏览器均支持 XMLHttpRequest 对象(IE5 和 IE6 使用 ActiveXObject)。

a) 创建对象的语法:

老版本的 Internet Explorer (IE5 和 IE6)使用 ActiveX 对象:

variable=new ActiveXObject("Microsoft.XMLHTTP");

Ø 向服务器发送请求

如需将请求发送到服务器,我们使用 XMLHttpRequest 对象的 open() 和 send() 方法。

语法:open(method,url,async)和xmlhttp.send()。

Ø onreadystatechange 事件

当请求被发送到服务器时,我们需要执行一些基于响应的任务。每当 readyState 改变时,就会触发 onreadystatechange 事件。readyState 属性存有 XMLHttpRequest 的状态信息。下面是 XMLHttpRequest 对象的三个重要的属性:

属性

描述

onreadystatechange

存储函数(或函数名),每当 readyState 属性改变时,就会调用该函数。

readyState

存有 XMLHttpRequest 的状态。从 0 到 4 发生变化。

· 0: 请求未初始化

· 1: 服务器连接已建立

· 2: 请求已接收

· 3: 请求处理中

· 4: 请求已完成,且响应已就绪

status

200: "OK"

404: 未找到页面

如需获得来自服务器的响应,请使用 XMLHttpRequest 对象的 responseText 或 responseXML 属性。

4. 案例

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180201A0BN5A00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券