admin 管理员组

文章数量: 887021

名词解释ajax,Ajax

一、名词解释

1、同步Synchoronous

在一个任务进行中,不能开启其他任务

同步访问中:在浏览器向服务器发送请求时,浏览器只能等待服务器的响应,不能做其他的任何事情

出现场合:

(1)地址栏访问服务器

(2)a标签跳转

(3)submit提交

2、异步Asynchoronous

在一个任务执行时,可以开启其他任务

异步访问时,浏览器向服务器发送请求时,不耽误用户在网页的其他操作

出现场合

1、用户名的验证

2、聊天室

3、搜索建议

4、股票走势图

二、Ajax

Asynchronous javascript and Xml(现在使用json居多)

本质:使用js提供的异步对象(XMLHttpRequest),异步向服务器发送请求,并接收响应回来的数据,ajax可以无刷新的更改页面的布局内容

1、异步请求的步骤

(1)创建异步对象

var xhr=new XHMHttpResponse()

异步对象的属性和方法:

readyState属性:

值:0~4,5个状态

0:请求未初始化

1:已经打开到服务器的连接,正在发送请求

2:接收响应头

3:接收响应主体

4:响应数据就收成功

status:服务器的响应状态码

200:服务器正确处理了请求,并给出响应

onreadystatechange:当xhr对象的readystate属性值发生变化时自动激发

(2)绑定监听事件

(3)打开链接(创建请求)

xhr.open(method,url,isAsyn)

method:请求的方法(get/post),string格式

url:访问服务器的地址(接口),string

isAsyn:是否采用异步的请求方式 boolean型(true异步,false同步)

(4)发送请求

xhr.send(body)

使用get方法时,body为null,或者不写

使用post方法时,要创建请求主体

content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">

Document

//(1)创建异步对象

var xhr=new XHMHttpResponse()

//(2)绑定监听事件

xhr.onreadystatechange=function () {

//此方法会被调用4次

//最后一次,readyState==4

//并且响应状态码为200时,才是要的响应,xhr.status==200

if (xhr.readyState==4){

//把响应数据存储到变量result中

var result=xhr.responseText;

}

}

//(3)打开链接(创建请求)

xhr.open('get','/myajax',true);

//(4)发送请求

xhr.send(null);

注意:post请求时:

(1)xhr.open(请求方式,url,是否异步请求),请求方式为post

(2)由于默认的请求参数类型为text/plain,代表没有特殊符号的字符,但是主体字符串中有特殊符号&,所以需要设置参数类型,这一步必须在xhr的open方法和send方法之间

xhr.setRequestHeader("Content-type","application/x-www-form-urlencoded");

(3)请求主体中要有请求数据,格式为get方法中?后面参数格式

本文标签: 名词解释ajax Ajax