【协议】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 |||

注:以上,如有不合理之处,还请帮忙指出,大家一起交流学习~

相关推荐
LyaJpunov13 分钟前
C++中move和forword的区别
开发语言·c++
程序猿练习生18 分钟前
C++速通LeetCode中等第9题-合并区间
开发语言·c++·leetcode
世俗ˊ23 分钟前
CSS入门笔记
前端·css·笔记
子非鱼92123 分钟前
【前端】ES6:Set与Map
前端·javascript·es6
6230_28 分钟前
git使用“保姆级”教程1——简介及配置项设置
前端·git·学习·html·web3·学习方法·改行学it
一名路过的小码农28 分钟前
C/C++动态库函数导出 windows
c语言·开发语言·c++
m0_6312704030 分钟前
标准c语言(一)
c语言·开发语言·算法
万河归海42831 分钟前
C语言——二分法搜索数组中特定元素并返回下标
c语言·开发语言·数据结构·经验分享·笔记·算法·visualstudio
Messiah___36 分钟前
【论文阅读】Slim Fly: A Cost Effective Low-Diameter Network Topology 一种经济高效的小直径网络拓扑
开发语言·php
想退休的搬砖人37 分钟前
vue选项式写法项目案例(购物车)
前端·javascript·vue.js