【协议】XMLHttpRequest的梳理和总结
1. 前言
本篇梳理和总结一下XMLHttpRequest。
2. XMLHttpRequest原型对象的属性和方法
| 属性和方法 | 说明 | 示例 |
| new XMLHttpRequest() | 功能:创建XHR对象 输入: 输出:XHR实例化对象 | <略> |
| XMLHttpRequest.prototype .open(method, url, async?, user?, password?) | 功能:初始化或重新初始化一个请求 输入: method - HTTP方法,GET | POST | PUT | DELETE url - 一个DOMString,要向其发送请求的URL async - 是否异步,默认true异步 | <略> |
| XMLHttpRequest.prototype .send(body) | 功能:发送请求,如果请求是异步的,那么该方法在请求发送后立即返回 输入: Document | Blob | BufferSource | FormData | URLSearchParams | USVString | null 输出:undefined | <略> |
| XMLHttpRequest.prototype .abort() | 功能:如果请求已被发出,则立刻中止请求 输入:无 | <略> |
| XMLHttpRequest.prototype .setRequestHeader(header, value) | 功能:设置HTTP请求头的值,在open之后send之前调用 输入:header属性的名称,value属性的值 | <略> |
| XMLHttpRequest.prototype .getResponseHeader(header) | 功能:返回包含指定响应头的字符串,如果响应尚未收到或响应中不存在,则返回null 输入:一个字符串,表示要返回的报文项名称 输出:报文项的值 | null | <略> |
| XMLHttpRequest.prototype .getResponseAllHeaders() | 功能:以字符串的形式返回所有用CRLF分隔的响应头,如果没有收到响应,则返回null。 输入:无 输出:每行用\r\n分割的字符串 | null | <略> |
| XMLHttpRequest.prototype .overrideMimeType(mimeType) | 功能:覆写由服务器返回的MIME类型,用指定mimeType代替服务器指定的MIME类型,服务器没有指定默认为text/xml 输入:DOMString 输出:undefined | <略> |
| XMLHttpRequest.prototype .readyState | 功能:获取请求的状态码(只读) | <略> |
| XMLHttpRequest.prototype .responseType | 功能:一个用于定义响应类型的枚举值(只读) 输出:’‘ | ’arraybuffer‘ | 'blob' | 'document' | 'json' | 'text' | <略> |
| XMLHttpRequest.prototype .response | 功能:返回一个ArrayBuffer、Blob、Document或DOMString,依赖于 XMLHttpRequest.prototype.responseType (只读) | <略> |
| XMLHttpRequest.prototype .responseText | 功能:返回一个DOMString,其中包含该请求的响应,如果请求未成功或尚未发送,返回null(只读) 输出:DOMString | null | <略> |
| XMLHttpRequest.prototype .responseXML | 功能:返回一个Document,其中包含该请求的响应,如果请求未成功或尚未发送或不能被解析为XML或HTML,返回null(只读) 输出:XML | HTML | null | <略> |
| XMLHttpRequest.prototype .responseURL | 功能:返回一个经过序列化的响应URL,如果该URL为空,则返回空字符串(只读) 输出:URL | '' | <略> |
| XMLHttpRequest.prototype .status | 功能:返回一个无符号短整型数字,代表请求的响应状态(只读) 输出:unsigned short iint | <略> |
| XMLHttpRequest.prototype .statusText | 功能:返回一个DOMString,其中包含HTTP服务器返回的响应状态,与 XMLHttpRequest.prototype.status不同的是,它包含完整的响应状态文本,如:“200 OK”(只读) 输出:DOMString | <略> |
| XMLHttpRequest.prototype .timeout | 功能:一个无符号长整型数字,表示最大请求时间(毫秒),若超出该时间,请求会自动终止(可读写) | <略> |
| XMLHttpRequest.prototype .upload | 功能:获取上传进度(只读) | <略> |
| XMLHttpRequest.prototype .withCredentials | 功能:一个布尔值,用来指定跨域请求是否携带授权信息,如果cookie或授权header头(可读写) | <略> |
| 事件 | ||
| XMLHttpRequest.prototype .onreadystatechange | 功能:XMLHttpRequest.prototype.readyState发生变化时,调用的事件处理程序 | <略> |
| XMLHttpRequest.prototype .onabort | 功能:请求被停止时触发,例如调用 XMLHttpRequest.prototype.abort() | <略> |
| XMLHttpRequest.prototype .onerror | 功能:请求出错时触发 | <略> |
| XMLHttpRequest.prototype .onload | 功能:请求成功完成时触发 | <略> |
| XMLHttpRequest.prototype .onloadstart | 功能:接收到响应数据时触发 | <略> |
| XMLHttpRequest.prototype .onloadend | 功能:当请求结束时触发,不论请求成功还是失败。 | <略> |
| XMLHttpRequest.prototype .onprogress | 功能:当请求接收到更多数据时,周期性地触发 | <略> |
| XMLHttpRequest.prototype .ontimeout | 功能:在预设时间内没有收到响应时触发 | <略> |
| 常量 XMLHttpRequest.prototype.UNSENT - 0 XMLHttpRequest.prototype.OPENED - 1 XMLHttpRequest.prototype.HEADERS_RECEIVE - 2 XMLHttpRequest.prototype.LOADING - 3 XMLHttpRequest.prototype.DONE - 4 | ||
注:以上,如有不合理之处,还请帮忙指出,大家一起交流学习~
相关文章:
【协议】XMLHttpRequest的梳理和总结
1. 前言 本篇梳理和总结一下XMLHttpRequest。 2. XMLHttpRequest原型对象的属性和方法 属性和方法说明示例new XMLHttpRequest() 功能:创建XHR对象 输入: 输出:XHR实例化对象 <略> XMLHttpRequest.prototype .open(method, url, asyn…...
AI教我学编程之C#类的基本概念(1)
前言 在AI教我学编程之C#类型 中,我们学习了C#类型的的基础知识,而类正是类型的一种. 目录 区分类和类型 什么是类? 对话AI 追问 实操 追踪属性的使用 AI登场 逐步推进 提出疑问 药不能停 终于实现 探索事件的使用 异步/交互操作 耗时操…...
前端js 数据结构:对象 object、数组Array 、Map 的创建、增删改 / 遍历数据
目录 前端js 数据结构:对象、数组、Map 的使用1 对象(object)1.1 创建对象1.1.1 对象字面量(最常用): {}1.1.2 使用 new 关键字和对象构造函数1.1.3 Object.create() 1.2 修改对象1.2.1 直接赋值:对象的属性名直接赋值1.2.2 点号/…...
ARM_Linux的NFS网络文件系统的搭建
介绍: NFS是network filesystem的简称,可以不同的主机通过网络访问远端的NFS服务器共享出来的文件,这样主机通过网络访问NFS服务器,我们就可以在开发板上通过网络访问主机的文件。 为什么要使用NFS网络文件呐? 1、传…...
vscode配置web开发环境(WampServer)
这里直接去下载了集成的服务器组件wampserver,集成了php,MySQL,Apache 可能会出现安装问题,这里说只有图上这些VC包都安装了才能继续安装,进入报错里提供的链接 在页面内搜索相关信息 github上不去可以去镜像站 下载…...
00-Rust前言
问:为什么要近期想学习Rust? 答: Rust出来也是有一段时间了,从Microsoft吵着要重构他们的C"祖传代码"开始,Rust就披着“高效,安全”的头衔。而自己决定要学习Rust,是因为近期发现:涉…...
3.conda的使用
anaconda安装 ubuntu 安装conda 系统架构 uname -m打开终端,不启动base conda config --set auto_activate_base falseconda命令使用 1.查看conda版本 conda --version2.查看conda配置环境 conda config --show3.设置镜像 #设置清华镜像 conda config --add…...
IPv6自动隧道---6to4中继
6to4中继 普通IPv6网络需要与6to4网络通过IPv4网络互通,这可以通过6to4中继路由器方式实现。所谓6to4中继,就是通过6to4隧道转发的IPv6报文的目的地址不是6to4地址,但转发的下一跳是6to4地址,该下一跳为路由器我们称之为6to4中继。隧道的IPv4目的地址依然从下一跳的6to4地…...
低代码开发:解锁数字化转型新维度
在信息化浪潮中,企业正面临着前所未有的挑战与机遇。一方面,市场环境瞬息万变,业务需求迭代频繁,对快速应用开发提出了更高要求;另一方面,传统软件开发模式受限于高成本、长周期等瓶颈,难以满足…...
写一个定时备份数据库的脚本,且只保留最近3天
下面是一个备份数据库并只保留最近3天备份的脚本示例,该脚本使用Python编写: import os import datetime import shutil # 更多源码前往获取:www.qqmu.com # 数据库备份目录 backup_dir "/path/to/backupdir"# 数据库名称 databa…...
java常见面试题:请详细解释如何在Java EE应用中添加EJB
在Java EE应用中添加EJB(Enterprise JavaBeans)涉及几个关键步骤。下面是一个详细的解释: 创建EJB项目: 首先,你需要创建一个Java EE项目。这通常通过IDE(如Eclipse、IntelliJ IDEA等)完成&…...
视频监控需求记录
记录一下最近要做的需求,我个人任务还是稍微比较复杂的 需求:需要实现一个视频实时监控、视频回放、视频设备管理,以上都是与组织架构有关 大概的界面长这个样子 听着需求好像很简单,但是~我们需要在一个界面上显示两个厂商的视…...
Self-RAG:通过自我反思学习检索、生成和批判
论文地址:https://arxiv.org/abs/2310.11511 项目主页:https://selfrag.github.io/ Self-RAG学习检索、生成和批评,以提高 LM 的输出质量和真实性,在六项任务上优于 ChatGPT 和检索增强的 LLama2 Chat。 问题:万能L…...
C++基于多态的职工管理系统(附代码下载)
🌈个人主页:godspeed_lucip 🔥 系列专栏:C从基础到进阶 本文配套markdown文件、配套完整程序(vs项目,可直接运行)网盘链接请翻阅至文章最底部获取。 职工管理系统🌏1、管理系统需求…...
Java安全 CC链1分析
Java安全之CC链1分析 什么是CC链环境搭建jdk下载idea配置创建项目 前置知识Transformer接口ConstantTransformer类invokerTransformer类ChainedTransformer类 构造CC链1CC链1核心demo1demo1分析 寻找如何触发CC链1核心TransformedMap类AbstractInputCheckedMapDecorator类readO…...
Miracast手机高清投屏到电视(免费)
版权声明 本文原创作者:谷哥的小弟作者博客地址:http://blog.csdn.net/lfdfhl Miracast概述 Miracast是一种无线显示标准,它允许支持Miracast的设备之间通过Wi-Fi直接共享音频和视频内容,实现屏幕镜像或扩展显示。这意味着你可以…...
【elementUI】el-select相关问题
官方使用DEMO <template><el-select v-model"value" placeholder"请选择"><el-optionv-for"item in options":key"item.value":label"item.label":value"item.value"></el-option></…...
【蓝桥杯日记】复盘第一篇——顺序结构
🚀前言 本期是一篇关于顺序结构的题目的复盘,通过复盘基础知识,进而把基础知识学习牢固!通过例题而进行复习基础知识。 🚩目录 前言 1.字符三角形 分析: 知识点: 代码如下 2. 字母转换 题目分析: 知…...
使用 MinIO 和 PostgreSQL 简化数据事件
本教程将教您如何使用 Docker 和 Docker Compose 在 MinIO 和 PostgreSQL 之间设置和管理数据事件,也称为存储桶或对象事件。 您可能已经在利用 MinIO 事件与外部服务进行通信,现在您将通过使用 PostgreSQL 自动化和简化数据事件管理来增强数据处理能力…...
苹果电脑(Mac)的node版本安装以及升降级
在开发过程中,对于不同的开发环境或者较老的项目可能需要切换不同的node版本,此过程会涉及到node版本的升级与降级,安装node版本管理模块n(sudo命令)。 全局安装n模块 sudo npm install n -g//输入后回车,…...
【Axure高保真原型】引导弹窗
今天和大家中分享引导弹窗的原型模板,载入页面后,会显示引导弹窗,适用于引导用户使用页面,点击完成后,会显示下一个引导弹窗,直至最后一个引导弹窗完成后进入首页。具体效果可以点击下方视频观看或打开下方…...
Lombok 的 @Data 注解失效,未生成 getter/setter 方法引发的HTTP 406 错误
HTTP 状态码 406 (Not Acceptable) 和 500 (Internal Server Error) 是两类完全不同的错误,它们的含义、原因和解决方法都有显著区别。以下是详细对比: 1. HTTP 406 (Not Acceptable) 含义: 客户端请求的内容类型与服务器支持的内容类型不匹…...
ES6从入门到精通:前言
ES6简介 ES6(ECMAScript 2015)是JavaScript语言的重大更新,引入了许多新特性,包括语法糖、新数据类型、模块化支持等,显著提升了开发效率和代码可维护性。 核心知识点概览 变量声明 let 和 const 取代 var…...
Linux相关概念和易错知识点(42)(TCP的连接管理、可靠性、面临复杂网络的处理)
目录 1.TCP的连接管理机制(1)三次握手①握手过程②对握手过程的理解 (2)四次挥手(3)握手和挥手的触发(4)状态切换①挥手过程中状态的切换②握手过程中状态的切换 2.TCP的可靠性&…...
Mac软件卸载指南,简单易懂!
刚和Adobe分手,它却总在Library里给你写"回忆录"?卸载的Final Cut Pro像电子幽灵般阴魂不散?总是会有残留文件,别慌!这份Mac软件卸载指南,将用最硬核的方式教你"数字分手术"࿰…...
汇编常见指令
汇编常见指令 一、数据传送指令 指令功能示例说明MOV数据传送MOV EAX, 10将立即数 10 送入 EAXMOV [EBX], EAX将 EAX 值存入 EBX 指向的内存LEA加载有效地址LEA EAX, [EBX4]将 EBX4 的地址存入 EAX(不访问内存)XCHG交换数据XCHG EAX, EBX交换 EAX 和 EB…...
网站指纹识别
网站指纹识别 网站的最基本组成:服务器(操作系统)、中间件(web容器)、脚本语言、数据厍 为什么要了解这些?举个例子:发现了一个文件读取漏洞,我们需要读/etc/passwd,如…...
基于 TAPD 进行项目管理
起因 自己写了个小工具,仓库用的Github。之前在用markdown进行需求管理,现在随着功能的增加,感觉有点难以管理了,所以用TAPD这个工具进行需求、Bug管理。 操作流程 注册 TAPD,需要提供一个企业名新建一个项目&#…...
Java数值运算常见陷阱与规避方法
整数除法中的舍入问题 问题现象 当开发者预期进行浮点除法却误用整数除法时,会出现小数部分被截断的情况。典型错误模式如下: void process(int value) {double half = value / 2; // 整数除法导致截断// 使用half变量 }此时...
人工智能--安全大模型训练计划:基于Fine-tuning + LLM Agent
安全大模型训练计划:基于Fine-tuning LLM Agent 1. 构建高质量安全数据集 目标:为安全大模型创建高质量、去偏、符合伦理的训练数据集,涵盖安全相关任务(如有害内容检测、隐私保护、道德推理等)。 1.1 数据收集 描…...
