XMLHttpRequest中文参考手册.pdf
XMLHttpRequest 提提提户端端http服务器器讯的协协 Example 下面的代码是在 JScript中创建一个 XmlhTtp对象并从服务器请求一个 XML文档。服务器返回XML文档并显示 var xmlHttpReq = new ActiveXObject("MSXML2.XMLHTTP.3.0"); xmlHttpReq.open("GET", "http://localhost/books.xml", false); xmlHttpReq.send(); alert(xmlHttpReq.responseText); 在非IE的浏览器中,需要用 new XmlHttpreQueSt()来创建对象,如下: var xmlHttpReq = new XMLHttpRequest(); xmlHttpReq.open("GET", "http://localhost/books.xml", false); xmlHttpReq.send(); alert(xmlHttpReq.responseText); XMLHttpRequest(XHR)是JavaScript中用于在客户端与服务器之间进行异步数据交换的关键技术,它使得网页可以在不刷新整个页面的情况下与服务器通信,这就是我们常说的AJAX(Asynchronous JavaScript and XML)。虽然名称中包含XML,但实际使用时,数据格式可以是XML、JSON、HTML或其他任何能通过HTTP协议传输的数据格式。 在IE浏览器中,创建XMLHttpRequest对象通常使用ActiveXObject,例如: ```javascript var xmlHttpReq = new ActiveXObject("MSXML2.XMLHTTP.3.0"); ``` 而在非IE浏览器(如Firefox、Chrome、Safari等)中,XMLHttpRequest对象是原生支持的,创建方式如下: ```javascript var xmlHttpReq = new XMLHttpRequest(); ``` 以下是一些XMLHttpRequest对象的主要成员、方法和属性: 1. **onreadystatechange**:这是一个事件处理函数,当readyState属性改变时触发。readyState属性表示请求的状态,有五个可能的值,分别代表请求的不同阶段。 2. **readyState**:返回当前请求的状态,0表示初始化,1表示已打开,2表示已发送,3表示正在接收,4表示完成。 3. **responseBody**:返回响应体作为一个无符号的字节数组,只读。 4. **responseStream**:返回响应体作为ADO Stream对象,只读。 5. **responseText**:返回响应体作为文本字符串,只读。 6. **responseXML**:如果响应类型是XML,此属性将返回一个XML DOM对象,只读。 7. **status**:返回HTTP状态码,如200表示成功,404表示未找到,500表示服务器内部错误,只读。 8. **statusText**:返回HTTP状态的文本描述,只读。 9. **abort()**:取消当前的HTTP请求。 10. **getAllResponseHeaders()**:返回所有响应头的信息,以字符串形式。 11. **getResponseHeader(header)**:根据提供的header名返回响应头的值。 12. **open(method, url, async, user, password)**:初始化一个新的HTTP请求,method是请求类型(如GET、POST),url是请求地址,async是是否异步,默认为true,user和password是可选的认证信息。 13. **send(data)**:发送HTTP请求,data是可选的POST请求数据。 14. **setRequestHeader(header, value)**:设置请求头的字段和值。 在上述示例中,`xmlHttpReq.open("GET", "http://localhost/books.xml", false);`创建了一个GET请求,`false`参数表示同步执行(即等待服务器响应后再继续执行)。然后,`xmlHttpReq.send();`发送请求,最后`alert(xmlHttpReq.responseText);`显示服务器返回的文本。 XMLHttpRequest是现代Web开发中不可或缺的一部分,它使得我们可以构建更动态、更交互式的网页应用。了解并熟练掌握XMLHttpRequest的用法对于任何JavaScript开发者来说都是至关重要的。
剩余22页未读,继续阅读
- 粉丝: 0
- 资源: 3
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- (源码)基于C++和C混合模式的操作系统开发项目.zip
- (源码)基于Arduino的全球天气监控系统.zip
- OpenCVForUnity2.6.0.unitypackage
- (源码)基于SimPy和贝叶斯优化的流程仿真系统.zip
- (源码)基于Java Web的个人信息管理系统.zip
- (源码)基于C++和OTL4的PostgreSQL数据库连接系统.zip
- (源码)基于ESP32和AWS IoT Core的室内温湿度监测系统.zip
- (源码)基于Arduino的I2C协议交通灯模拟系统.zip
- coco.names 文件
- (源码)基于Spring Boot和Vue的房屋租赁管理系统.zip