1. jQuery ajax

$.ajax({   type: 'POST',   url: url,   data: data,   dataType: dataType,   success: function () {},   error: function () {}});

优缺点:

  • 本身是针对MVC的编程,不符合现在前端MVVM的浪潮;

  • 基于原生的XHR开发,XHR本身的架构不清晰,已经有了fetch的替代方案;

  • JQuery整个项目太大,单纯使用ajax却要引入整个JQuery非常的不合理(采取个性化打包的方案又不能享受CDN服务);

2. axios

axios({    method: 'post',    url: '/user/12345',    data: {        firstName: 'Fred',        lastName: 'Flintstone'    }}).then(function (response) {    console.log(response);}).catch(function (error) {    console.log(error);});

优缺点:

  • 从 node.js 创建 http 请求;

  • 支持 Promise API;

  • 客户端支持防止CSRF;

  • 提供了一些并发请求到接口(重要,方便了很多的操作);

3. fetch

try {  let response = await fetch(url);  let data = response.json();  console.log(data);} catch(e) {  console.log("Oops, error", e);}

优缺点:

  • 符合关注分离,没有将输入、输出和用事件来跟踪的状态混杂在一个对象里;

  • 更好更方便的写法;

  • 更加底层,提供的API丰富(request, response);

  • 脱离了XHR,是ES规范里新的实现方式;

  • fetchtch只对网络请求报错,对400,500都当做成功的请求,需要封装去处理;

  • fetch默认不会带cookie,需要添加配置项;

  • fetch不支持abort,不支持超时控制,使用setTimeout及Promise.reject的实现的超时控制并不能阻止请求过程继续在后台运行,造成了量的浪费;

  • fetch没有办法原生监测请求的进度,而XHR可以;

为什么要用axios?

axios 是一个基于Promise 用于浏览器和 nodejs 的 HTTP 客户端,它本身具有以下特征:

  • 从浏览器中创建 XMLHttpRequest;

  • 从 node.js 发出 http 请求;

  • 支持 Promise API;

  • 拦截请求和响应;

  • 转换请求和响应数据;

  • 取消请求;

  • 自动转换JSON数据;

  • 客户端支持防止CSRF/XSRF;

ajax 2分钟超时_ajax和axios、fetch的区别相关推荐

  1. 【AJAX 笔记】AJAX 基本、HTTP 基本、原生 AJAX 的使用,jQuery / Axios / fetch 发送请求、跨域(JSONP/CORS)

    文章目录 1 Ajax 概述 1.1 AJAX 简介 1.2 XML 简介 1.3 AJAX 的特点 1.3.1 AJAX 的优点 1.3.2 AJAX 的缺点 1.4 AJAX 属性和方法 2. H ...

  2. addeventlistener不支持ajax_十万个Web前端面试题之AJAX、axios、fetch的区别

    来自灵魂的拷问 你知道AJAX.axios.fetch的区别吗? 小白回答 AJAX用来请求数据的吧,另外axios和fetch是啥? 老鸟回答 AJAX Gmail开发人员发现IE里面有个XMLHT ...

  3. vue-d2admin-axios异步请求登录,先对比一下Jquery ajax, Axios, Fetch区别

    先说一下对比吧 Jquery ajax, Axios, Fetch区别之我见 引言 前端技术真是一个发展飞快的领域,我三年前入职的时候只有原生XHR和Jquery ajax,我们还曾被JQuery 1 ...

  4. Ajax,jQuery ajax,axios和fetch的区别

    Ajax,jQuery ajax,axios和fetch的区别 Ajax: Ajax 即"Asynchronous Javascript And XML"(异步 JavaScrip ...

  5. Ajax请求session超时处理流程(DWZ)

    DWZ-Java框架Ajax请求session超时处理思路:     1)SessionValidateFilter统一验证session是否超时     2)SessionValidateFilte ...

  6. Ajax请求session超时解决办法

    Ajax请求session超时解决办法 问题描述 通过ajax发送请求,被后台过滤器或者拦截器拦截的时候,如果session超时,不会直接跳转到登录页面. 解决方案 在过滤器或者拦截器中设置respo ...

  7. 微信内置浏览器Ajax请求10s超时重发问题的解决方案

    最近在做一个微信公众号的项目,期间遇到一个纠结了几天的问题,就是微信页面上激活一次Ajax,实际执行两次请求,由于现实情况原因,该Ajax请求有时延迟会在20s以上.分析后台日志发现,如果Ajax请求 ...

  8. java和python的web自动化有什么区别-三分钟看懂Python和Java的区别

    随着人工智能的火爆,Python和Java一直在各种流行编程语言中名列前茅.其实Java和Python有些相似,因为很多编程语言之间是互通的.Java现在还是第一,不知道Python未来会不会超越Ja ...

  9. python和java一样吗-三分钟看懂Python和Java的区别

    随着人工智能的火爆,Python和Java一直在各种流行编程语言中名列前茅.其实Java和Python有些相似,因为很多编程语言之间是互通的.Java现在还是第一,不知道Python未来会不会超越Ja ...

最新文章

  1. 对MySQL进行逻辑卷备份与恢复
  2. 新书上市 | 流行SQL引擎Presto,官方实战指南来了
  3. 开放API接口 笑话、天气、新闻
  4. PowerPoint动画制作时的需要注意的N个事项
  5. 每日一皮:一个难以复现的 bug ...
  6. CTF-web-xff,referer 知识点;
  7. python统计图像直方图_计算机视觉7-像素点直方图统计、掩膜图像
  8. 通过Java反射来理解泛型的本质
  9. DOS 入侵、群发邮件、心脏起搏器……病毒攻击简史!
  10. oracle group by优化
  11. 大数据、物联网技术、物联网卡,对我们生活带来的影响
  12. javawebjsp酒店预订系统 (jsp酒店管理系统jsp民宿预订系统)jsp酒店客房预订系统
  13. Dexpot 虚拟桌面软件(推荐)
  14. 马云预言再次成真!刷脸支付迅速开拓市场,二维码市场岌岌可危
  15. 计算机设备编号中字母代号对照,设备位号编号规则及含义
  16. 第一个用计算机编舞的人,多媒体平台·虚拟人·数字舞蹈
  17. Android Studio第六课:模仿QQ登录跳转
  18. [PHP] 算法-请找出带环链表的环的入口结点的PHP实现
  19. 台式计算机dvd光驱在哪里,用台式电脑怎么放DVD
  20. C语言的取反操作(15)

热门文章

  1. Spring Boot(一) 建立spring boot工程
  2. min-max 容斥
  3. Java @override报错的解决方法
  4. ES6学习笔记二 新的声明方式和变量的解构赋值!
  5. 从零开始的linux 第五章
  6. HDU 3790 最短路径问题 (SPFA)
  7. [开源][J2ME]J2ME手机应用程序UI开发框架
  8. 第二阶段冲刺—第一天
  9. pytest十三:配置文件 pytest.ini
  10. psql执行sql的方式及一些基本命令