ajax 入门基础之--XMLHttpRequest对象总结(整理转)

XMLHttpRequest 实例 XMLHttpRequest 实例 基于MyEclipse的一个工程 里面有很多短小的实例 一个一个说明XMLHttpRequest 的用法 对初学者很有帮助 立即下载

 在ajax中有一个最为核心的概念就是 XMLHttpRequest 对象,这篇文章将有助于我们更加深入的理解 ajax 的知识。。。。。


XMLHttpRequest  提供客户端同http服务器通讯的协议
一:创建
IE : http_request = new ActiveXObject("Msxml2.XMLHTTP");
     http_request = new ActiveXObject("Microsoft.XMLHTTP");
非IE: http_request = new XMLHttpRequest();

二:onreadystatechange
指定当readyState属性改变时的事件处理句柄
语法
http_request .onreadystatechange = funcMyHandler;

三:readyState
返回XMLHTTP请求的当前状态
变量,此属性只读,状态用长度为4的整型表示.定义如下:
0 (未初始化) 对象已建立,但是尚未初始化(尚未调用open方法)
1 (初始化) 对象已建立,尚未调用send方法
2 (发送数据) send方法已调用,但是当前的状态及http头未知
3 (数据传送中) 已接收部分数据,因为响应及http头不全,这时通过responseBody和responseText获取部分数据会出现错误,
4 (完成) 数据接收完毕,此时可以通过通过responseBody和responseText获取完整的回应数据

四:responseBody
返回某一格式的服务器响应数据

五:responseStream
以Ado Stream对象的形式返回响应信

六:responseText
将响应信息作为字符串返回
备注

变量,此属性只读,将响应信息作为字符串返回。
XMLHTTP尝试将响应信息解码为Unicode字符串,XMLHTTP默认将响应数据的编码定为UTF-8,如果服务器返回的数据带BOM(byte -order mark),XMLHTTP可以解码任何UCS-2 (big or little endian)或者UCS-4 数据。注意,如果服务器返回的是xml文档,此属性并不处理xml文档中的编码声明。你需要使用responseXML来处理。

七:responseXML 将响应信息格式化为Xml Document对象并返回
备注

变量,此属性只读,将响应信息格式化为Xml Document对象并返回。如果响应数据不是有效的XML文档,此属性本身不返回XMLDOMParseError,可以通过处理过的DOMDocument对象获取错误信息。

八:status 返回当前请求的http状态码
长整形标准http状态码,定义如下:
Number Description
100
Continue
101
Switching protocols
200
OK
201
Created
202
Accepted
203
Non-Authoritative Information
204
No Content
205
Reset Content
206
Partial Content
300
Multiple Choices
301
Moved Permanently
302
Found
303
See Other
304
Not Modified
305
Use Proxy
307
Temporary Redirect
400
Bad Request
401
Unauthorized
402
Payment Required
403
Forbidden
404
Not Found
405
Method Not Allowed
406
Not Acceptable
407
Proxy Authentication Required
408
Request Timeout
409
Conflict
410
Gone
411
Length Required
412
Precondition Failed
413
Request Entity Too Large
414
Request-URI Too Long
415
Unsupported Media Type
416
Requested Range Not Suitable
417
Expectation Failed
500
Internal Server Error
501
Not Implemented
502
Bad Gateway
503
Service Unavailable
504
Gateway Timeout
505
HTTP Version Not Supported
备注
长整形,此属性只读,返回当前请求的http状态码,此属性仅当数据发送并接收完毕后才可获取。

九:xmlhttprequest:statusText成员
statusText
返回当前请求的响应行状态

十:abort()方法
取消当前请求

十一:getallresponseheaders()方法
获取响应的所有http头
备注

每个http头名称和值用冒号分割,并以/r/n结束。当send方法完成后才可调用该方法。

十二:getResponseHeader 从响应信息中获取指定的http头
例:
xmlhttp.getResponseHeader("Server");
输出http头中的server列:当前web服务器的版本及名称。
备注

当send方法成功后才可调用该方法。如果服务器返回的文档类型为"text/xml", 则这句话xmlhttp.getResponseHeader("Content-Type");将返回字符串"text/xml"。可以使用 getAllResponseHeaders方法获取完整的http头信息。

十三:open()方法 创建一个新的http请求,并指定此请求的方法、URL以及验证信息
语法

XMLHttpRequest.open(strMethod, strUrl, blnAsync, strUser, strPassword);

参数
strMethod
http方法,例如:POST、GET、PUT及PROPFIND。大小写不敏感。
strUrl
请求的URL地址,可以为绝对地址也可以为相对地址。
blnAsync[可选]
布尔型,指定此请求是否为异步方式,默认为true。如果为真,当状态改变时会调用onreadystatechange属性指定的回调函数。
async是一个布尔值。如果是异步通信方式(true),客户机就不等待服务器的响应;如果是同步方式(false),客户机就要等到服务器返回消息后才去执行其他操作。我们需要根据实际需要来指定同步方式,在某些页面中,可能会发出多个请求,甚至是有组织有计划有队形大规模的高强度的request,而后一个是会覆盖前一个的,这个时候当然要指定同步方式:Flase。
strUser[可选]
如果服务器需要验证,此处指定用户名,如果未指定,当服务器需要验证时,会弹出验证窗口。
strPassword[可选]
验证信息中的密码部分,如果用户名为空,则此值将被忽略。
备注
调用此方法后,可以调用send方法向服务器发送数据。

十四:send()方法
发送请求到http服务器并接收回应
XMLHttpRequest.send(varBody);
参数
varBody
欲通过此请求发送的数据。
备注
此方法的同步或异步方式取决于open方法中的bAsync参数,如果bAsync == False,此方法将会等待请求完成或者超时时才会返回,如果bAsync == True,此方法将立即返回。

十五:setRequestHeader 单独指定请求的某个http头

Example:

XMLHttpRequest使用小例子 XMLHttpRequest使用小例子,将值异步传递,纯JS实现 立即下载

相关推荐

Ajax简单实例 XMLHttpRequest

Ajax 简单实例 XMLHttpRequest对象的创建,请求,发送,仅供初学者

JavaScript-XMLHttpRequest实例

document.getElementById("search").onclick=function(){ //发送查询请求并处理 var request = new XMLHttpRequest(); request.open("GET","service.php?number="+document.getElementById("keyword").value);//第三个参数默认为tr

Shawn的博客 659

解决Android UVCCamera stopPreview 报错 崩溃 闪退 问题

在使用libuvccamera库的UVCCamera时,经常在调用stopPreview关闭预览的时候,app直接崩溃闪退了,经过综合各种修改源码的方案,已解决这个问题,以下请参考: 首先找到android_usbfs.c,linux_usbfs.c两个原文件,在两个文件中都可以找到这段代码,按如下示例修改: 修改前: for (i = 0; i < num_urbs; i++) { if (urb == tpriv->iso_urbs[i]) { urb_idx = i + 1;

hanye2020的博客 3576

XMLHttpRequest类成员和实例

XMLHttpRequest对象XMLHttpRequest 提供客户端同http服务器通讯的协议一:创建IE : http_request = new ActiveXObject("Msxml2.XMLHTTP"); http_request = new ActiveXObject("Microsoft.XMLHTTP");非IE: http_request = new XMLHttp...

weixin_30535565的博客 183

Android 15网络子系统深度解析(一):ConnectivityService与网络管理框架全解析

深入剖析Android 15核心网络服务ConnectivityService的架构设计、NetworkAgent/Factory机制、网络状态管理、以及WiFi/移动网络切换的完整流程

Cheson的专栏 1749

从稳压管到LDO芯片:一张图看懂线性电源的‘内卷’进化史

本文追溯了从稳压管到LDO芯片的线性电源技术进化历程,详细解析了各阶段的技术突破与局限。重点探讨了现代LDO在超低功耗、高精度控制等方面的创新,并提供了实战选型的黄金法则,帮助工程师在电子设备小型化与低功耗化趋势中做出最优选择。

weixin_42525551的博客 206

js使用XMLHttpRequest 封装一个http请求,并返回调用结果,直接给出代码

答:var xhr = new XMLHttpRequest(); xhr.open("GET", "http://example.com/ajax.php"); xhr.onreadystatechange = function(){ if (xhr.readyState == 4 && xhr.status == 200) { var response ...

weixin_42602368的博客 433

手把手教你用CubeMX给GD32F103点灯、调串口(附完整工程)

本文详细介绍了如何使用CubeMX为GD32F103开发板配置GPIO点灯和串口通信,包含完整的工程创建、代码构建和测试流程。特别强调了GD32与STM32的差异点及常见避坑技巧,帮助开发者快速上手GD32开发。

weixin_42566424的博客 313

JavaScript - XMLHttpRequest 应用示例(传输二进制数据、JSON 字符串,监测进度)

XMLHttpRequest - Living Standard 一直更新的官方标准 MDN XMLHttpRequest 使用 描述 XMLHttpRequest-2 新功能的博客文章 1. 异步模式或同步模式 XMLHttpRequest 对象的 open() 方法的第三个参数 async 设为 false 时,该 XMLHttpRequest 请求以同步模式进行。同步模式用户体验差,...

kikajack的博客 1万+

使用GitLab限制开发者使用CI/CD的权限,三种方案

使用三种方案来限制开发人员的CI/CD权限。

知无涯 5098

Qt视频播放器项目(打开文件,视频的播放与停止,进度条与视频进度绑定,调整音量,设置按钮图标,将槽函数与按钮绑定等功能)完整代码地址在末尾

【代码】Qt视频播放器项目。

分享计算机视觉,C++,网络摄像头研发,音视频开发,嵌入式等知识。 756

Ajax及其应用

Ajax相当于在用户和服务器之间加了一个中间层(Ajax引擎),使用户操作与服务器异步化,并不是所有的用户请求都提交给服务器,像一些数据验证和数据处理等都交给了Ajax引擎自己来做,只有确定需要从服务器读取新数据时再由Ajax引擎代为向服务器提交请求。load事件表示服务器传来的数据接收完毕,error事件表示请求出错,abort事件表示请求被中断。的时候,表示通信成功,这时回调函数就可以处理服务器传送回来的数据。3.load事件,error事件,abort事件。事件,会不断返回上传的进度。

Monkey_D_si的博客 90

多标签图像分类:标签依赖关系建模的最新论文解读与实战应用

多标签图像分类:标签依赖关系建模的最新论文解读与实战应用 ,人工智能,计算机视觉,大模型,AI,本文解读了最新相关论文,包括基于图神经网络(GCN)的ML-GCN方法,通过构建标签相关矩阵建模依赖关系;区域潜在语义依赖的RLSD模型,定位关键区域并利用RNN建模语义依赖;以及语义图表示学习的SSGRL框架,结合语义解耦与交互模块。通过实战应用,展示了基于PyTorch的ML-GCN模型实现,包括图像特征提取、标签依赖建模及训练评估流程,为多标签图像分类提供了有效解决方案。

不踩坑,不知道坑有多深;不总结,踩过的坑白踩。 18万+

ajax关键知识点之XMLHttpRequest对象详解与响应处理

本文详解了Ajax技术中XMLHttpRequest对象的核心知识点。主要内容包括:1)服务器响应状态码判断(200/304)与处理时机;2)文本响应(responseText)和XML响应(responseXML)的特点与应用场景;3)两种响应类型的对比选择建议;4)XMLHttpRequest对象的完整运行流程。文章通过外卖订单等生活化比喻,通俗易懂地解释了技术概念,特别强调处理XML响应时的浏览器兼容性问题。最后以表格形式归纳了关键知识点,帮助开发者快速掌握Ajax请求处理的核心要点。

2301_78506709的博客 939

《AgentScope-Java 深入浅出教程》第10章 RAG 知识检索

RAG(Retrieval-Augmented Generation,检索增强生成)是一种将信息检索与文本生成相结合的技术架构。它通过从外部知识库中检索相关文档,将检索到的信息作为上下文注入到语言模型的提示中,从而增强模型的回答质量。│ RAG 工作流程 ││ ││ 用户问题 向量检索 上下文增强 生成回答 ││ ▼ ││ │ A │ ││ ││ 1. 接收问题 ││ 2. 将问题转换为向量,在知识库中检索相似文档 ││ 3. 将检索到的文档作为上下文添加到提示词中 │。

步子哥的博客 462

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

Ajax-异步对象连接服务器-XMLHttpRequest

正在学习Ajax所以顺便也把自己整理的一些入门级的知识放在这里。XMLHttpRequest对象能够实现在Web中的异步访问,代码如下:var xmlHttp;//创建全局变量function createXMLHttpRequest(){//创建异步对象函数if(window.ActiveXObject)xmlHttp= new ActiveXObject("Microsof

marsseeker的专栏 840

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

AJAX核心XMLHTTPRequest对象

老早就写好了总结,今天整理发表一下。    XMLHttpRequest对象是AJAX的核心技术,XMLHttpRequest 是XMLHTTP 组件的对象,通过这个对象,AJAX可以像桌面应用程序一样只同服务器进行数据层面的交换,而不用每次都刷新界面,也不用每次将数据处理的工作都交给服务器来做;这样既减轻了服务器负担又加快了响应速度、缩短了用户等待的时间。 XMLHttpReques

走在奋斗的路上 1663

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

xhr对应ajax,AJAX / XHR :XMLHttpRequest对象

Ajax在我之前的博客中,多多少少已经提起一点了,今天介绍下Ajax中XMLHttpRequest对象。Ajax 通俗地讲可以实现网页的局部刷新,减轻服务的负荷量,给用户更好的体验度。Ajax的工作原理:Ajax可以通过回调函数的使用,在获取服务器的数据后,实现部分加载的功能。如图:XHR(xmlhttprequest)是Ajax的核心对象。其实就是Ajax实例化的执行者,很多方法和属性需要由它来...

weixin_29682291的博客 368

Ajax 基础整理

本文为博主在w3School学习完 Ajax 之后整理

YY_雅丽快跑 550

Ajax基础整理

Ajax 的全称是 Asynchronous JavaScript And XML(异步 JavaScript 和 XML)在网页中利用 XMLHttpRequest 对象和服务器进行数据交互的方式,就是 Ajax表单在网页中主要负责数据采集功能。HTML 中的 form 标签,就是用于采集用户输入的信息,并通过 form 标签的提交操作,把采集到的信息提交到服务器端进行处理。通过点击 submit 按钮,触发表单提交的操作,从而使页面跳转到 action URL 的行为,叫做表单的同步提交。...

qq_40046544的博客 584

Ajax基础配置 — XMLHttpRequest

转载声明:这是一篇在网上流行了很长时间的文档,并非BiZwiKi.CN Buzz PK Noise 原创。由于实在太过多网站进行转贴了,原作者已经很难确认。如果您是这份文档的原作者,请与我们联系,以便我我们将您的链接与信息加入到文档当中。然而,由于目前网上大部分的文档均为不负责任的转载,无论从阅读格式上面还是在源码考证上面也没有太过多的可靠性可言。基于目前99% 以上的Ajax 技术初学者均以此篇

johncools的博客 773

JavaScript笔记整理 —— XMLHttpRequest对象

XMLHttpRequest()方法是由JavaScript创建的HTTP请求对象(构造器)。值得一提的是,它最在是在IE中实现的(在IE中他叫做ActiveX)。目前,它已被所有现代浏览器所支持,是一种跨浏览器技术——Ajax应用。实际上,Ajax可以看做是由Js和XML之间建立的异步联系。 XHR对象是由Js代码创建的。 XML, 最初创建的HTTP请求是用来获取XML文档,XML文档中包含了需

Dragon.G 657

[Ajax]异步的 JavaScript 和 XML:Ajax入门教程(整理)

首先先来解释一下什么是 AJAX 。 简单来说AJAX = 异步 JavaScript 和 XML, 是一种用于创建快速动态网页的技术。 它不是一种编程语言,而是一种规范。 Ajax的主要功能是:通过在后台与服务器进行少量数据交换。 也就是说,使用AJAX 可以使网页实现异步更新。举一个最常见的例子: 当您在谷歌的搜索框输入关键字时,JavaScript 会把这些字符发送

汪海的实验室 5702

XMLHttpRequest对象

最近在学习AJAX这块内容的时候对XMLHttpRequest理解不是很到位,故留下一篇博客,整理自己的思路。 1.什么是 XMLHttpRequest 对象? XMLHttpRequest对象用于在后台与服务器交换数据。 XMLHttpRequest对象是开发者的梦想,因为您能够: 在不重新加载页面的情况下更新网页 在页面已加载后从服务器请求数据 在页面已加载后从服务器接收数据

北漂的IT小白菜 689

JS使用XMLHttpRequest对象POST收发JSON格式数据

JavaScirpt中的XMLHttpRequest对象提供了对 HTTP 协议的完全访问,使用该对象可以在不刷新页面的情况与服务器交互数据。XMLHttpRequest是实现AJAX技术的关键对象,本站曾整理过一篇介绍该对象的文章: JS使用XMLHttpRequest对象与服务器进行数据交互 ,今天将介绍使用XMLHttpRequest对象收发JSON格式数据。 应用场景 在工作中有一个应用需...

likunpeng6656201的博客 1万+
上一篇: HTC (HTML Component) 入门
下一篇: 使用C#创建SQL Server的存储过程(Visual Studio 2005 + SQL Server 2005)
BAD1027
博客等级 码龄21年 5粉丝 51原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值