关于原生 XMLHttpRequest 发送请求可以做的一些事情。
目前 XMLHttpRequest 实列是被所有浏览器支持的。
首先创建一个 XHR 对象实例。
const request = new XMLHttpRequest()
之后可以配置一些 返回值类型、超时时间、跨域请求携带COOKIE之类的。
request.responseType = responseType
request.timeout = timeOut
request.withCredentials = withCredentials
调用 XHR 对象的 open() 方法, 传入请求类型‘GET'/'POST' 之类的, 请求地址、 async 的值为 boolean 类型的。
request.open(method, url, true)
之后可以为 XHR 对象 添加时间处理器 onreadystatechange , 可以针对请求的一些状态来做一些处理。
request.onreadystatechange = function handleLoad() {
if (request.readyState !== 4) {
return
}
if (request.status === 0) {
return
}

这篇博客详细介绍了如何使用原生XMLHttpRequest对象发送HTTP请求。从创建XHR实例、配置请求参数,到设置onreadystatechange事件处理器、处理错误和超时,以及实现XSRF防御,逐一剖析每个步骤。最后提到了基于此封装Promise对象,实现请求拦截、响应拦截和取消请求等功能,以构建一个简化版的Axios库。
最低0.47元/天 解锁文章
500

被折叠的 条评论
为什么被折叠?



