1.XMLHttpRequest的方法
基本方法:
abort():停止发送当前请求
getAllResponseHeaders():根据服务器返回的全部响应头
getAllResponseHeaders(“headerLabel”):根据响应头的名字,获取对应的响应头
open("method","URL",[,asyuFlag[,"userName"[,"password"]]]):建立与服务器URL的连接,并设置请求的方法,以及是否使用异步请求。如果远程服务需要用户名、密码,则提供对应的信息。
send(content):发送请求。其中content是请求参数。
setRequestHeader("label","value"):在发送请求之前,先设置请求头
2.XMLHttpRequest的属性
XMLHttpRequest对象常用的属性如下:
onreadystatechange:该属性用于指定XMLHttpRequest对象状态改变时的事件处理函数
XMLHttpRequest对象有如下几个状态
0:XMLHttpRequest还没有完成初始化
1:XMLHttpRequest对象发送请求
2:XMLHttpRequest对象的请求发送完成
3:XMLHttpRequest开始读服务器的响应
4:XMLHttpRequest读取服务器响应结束
XMLHttpRequest对象的这几种状态都可以通过readystatus属性来读取。因此可以这样理解:每当XMLHttpRequest对象的readystate属性发生变化,其onreadystatechange属性指定的方法都会被触发。
readystate:该属性用于获取XMLHttpRequest对象的处理状态
responseText:该属性用于获取服务器的响应文本
status:该属性是服务器返回的状态码,只有当服务器的响应已经完成时,才会有该状态码
statusText:该属性是服务器返回的状态文本信息,只有当服务器的响应已经完成的时候才会有该条状态文本信息。
服务器的响应完成后,依然不能直接获取服务器的响应。因为服务器的响应也有很多种情况,例如页面生成"HTTP Status 404"字符串,表明服务器的状态码是404,404表示资源不存在--即使资源不存在,服务器一样会生成响应。通过检测XMLHttpRequest对象的status和statusText属性,即可判断服务器的响应是否正常。当服务器响应正常时,javascript才应该读取服务器响应信息,并将信息动态地加载到目标页面。
3.服务器常用的状态码
200:服务器响应正常
304:该资源在上次请求之后没有任何修改。这通常用于浏览器的缓存机制,使用GET请求时尤其需要注意。
400:无法找到请求资源
401:访问资源的权限不够
403:没有权限访问资源
404:需要访问的资源不存在
405:需要访问的资源被禁止
407:访问的资源需要代理身份验证
414:请求的URL过长
500:服务器内部错误