AJAX的底层实现原理?
Ajax核⼼ XMLHttpRequest,上⾯我们⼤概感受了⼀下Ajax的过程,我们发现发送异步请求才是核⼼,事实上它就是XMLHttpRequest,整个Ajax之所以能完成异步请求完全是因为这个对应可以发送异步请求的缘故。⽽且我们⼜发现上⾯那个事件就是整个处理过程的核⼼,可以根据不同状态执⾏不同操作,其实它就是XMLHttpRequest的⽅法onreadystatechange,它在每次状态发⽣改变时都会触发。那么是谁取得的返回信息呢?它就是XMLHttpRequest的另⼀个⽅法responseText(当然还有responseXML)。我们还没有说发送给谁以及执⾏发送操作,这两个就是XMLHttpRequest的open和send⽅法。Y(o)Y,其他的当然还有了,我们直接列出来吧:
XMLHttpRequest对象属性
readyState:请求状态,开始请求时值为0直到请求完成这个值增⻓到4
responseText:⽬前为⽌接收到的响应体,readyState<3此属性为空字符串,=3为当前响应体,=4则为完整响应体
responseXML:服务器端相应,解析为xml并作为Document对象返回status:服务器端返回的状态码,=200成功,=404表示“Not Found”
statusText:⽤名称表示的服务器端返回状态,对于“OK”为200,“Not Found”为400
⽅法
setRequestHeader():向⼀个打开但是未发⽣的请求设置头信息open():初始化请求参数但是不发送
send():发送Http请求abort():取消当前相应
getAllResponseHeaders():把http相应头作为未解析的字符串返回
getResponseHeader():返回http相应头的值
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)