前端之ajax笔记(一)

本文由何小蒙原创,如需转载要注明来源。

一直用的axios,属于会用但是对原理不精通,知道axios是对ajax的封装。现在重新学习下。
注:本人理解,仅供参考。

js原生使用方法
var xmlhttp = new XMLHttpRequest();
xmlhttp.open('GET','../../JIEKOU', true); // GET方法异步请求
xmlhttp.send(null);

send里面如果不需要发送参数,必须传入null。因为这个参数对有些浏览器是必需的。

XMLHttpRequest 对象

这个对象是用于我们熟知的功能:对服务器发送请求,处理从服务器返回的数据。

readyState
0:未初始化
1:已经open()但是还没send()
2:已经send()但是还没返回值
3:获取到部分返回值
4:获取到全部返回值

通常我们只对状态4感兴趣,通过onreadystatechange来判断状态的改变

xmlhttp.onreadystatechange = function() {
  if (xmlhttp.readystate == 4) {
   // 此处使用xhr对象不使用this是因为onreadystatechange作用域的问题
   // 使用this此函数会执行失败
  }
}
XMLHttpRequest 2

因为xhr用的人太多了,w3c就直接出了个规范,还稍微扩展了下。

  • formdata 可以直接用表单了,通过append设置表单
  • timeout 设置超时,超时后用ontimeout来处理
  • overrideMimeType 重写xhr响应的MIME类型

最后这个咱基本也没用过,以前基本是用来处理xml文件的,大致了解下。估计好久不用过段时间又得忘😑

其他相关系列:
前端之ajax笔记(一)
前端之ajax笔记(二)
前端之ajax笔记(三)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容