当前位置: 首页 > news >正文

Ajax fetch Axios 的区别

AJAX:一种创建交互式网页应用的网页执行交互技术

通过在后台与服务器进行少量数据交换,Ajax可以使网页实现异步更新。意味着:在不重新加载整个网页 的情况下,对网页某部分进行更新。

缺点:

针对MVC编程,不符合前端MVVM;基于原生XHR;配置和调用方式非常混乱,基于事件的异步模型不友好;

Fetch:

ES6中的promise对象,不是ajax进一步封装,而是原生js,没有使用XMLHttpRequest对象。

fetch 语法简洁,更加语义化;基于标准Promise实现,支持async/await 

缺点:

① fetch 只对网络请求报错,对400,500 都当做成功的请求,服务器返回400,500 错误码时不会reject,只有网络错误这些导致请求不能完成时,fetch才会被 reject。

② fetch 默 认 不 会 带 cookie , 需 要 添 加 配 置 项 : fetch(url, {credentials: 'include'})。

③ fetch 不 支 持 abort , 不 支 持 超 时 控 制 , 使 用 setTimeout 及 Promise.reject 的实现的超时控制并不能阻止请求过程继续在后台 运行,造成了流量的浪费。
④ fetch 没有办法原生监测请求的进度,而 XHR 可以。

(3)Axios 是一种基于Promise封装的HTTP客户端

浏览器发起XMLHttpRequest

node端发起http请求

支持promise API

监听请求和返回

对请求和返回进行转化

取消请求

自动转化json数据

客户端支持低于XSRF攻击

http://www.lryc.cn/news/136259.html

相关文章:

  • 数据库结构差异对比工具
  • Shell编程学习之breakcontinuereturn的应用
  • 有趣的数学 数学建模入门二 一些理论基础
  • Spring复习:(55)ApplicationContext中BeanFactoryPostProcessor是怎么添加到容器的?
  • 给wordpress添加关键词与描述
  • Verilog 入门
  • shell 简单且常用的几种
  • redis基本介绍以及在node中使用
  • React Native 文本输入基础知识
  • qt显示图片并转换成灰度图及伪彩图
  • oj在线编程输入输出
  • 【LeetCode 算法】Add Two Integers 两整数相加-位运算
  • 企业网络日志安全与 EventLog Analyzer
  • 清风数学建模——拟合算法
  • 单片机 (一) 让LED灯 亮
  • c++——单例模式
  • C# 流Stream详解(2)——FileStream、BinaryReader、MemorySream、SreamReader等之间的关系
  • 【JavaSE】详解final关键字
  • 问道管理:机器人概念走势活跃,新时达涨停,拓斯达、丰立智能等大涨
  • elementui 修改日期选择器el-date-picker样式
  • 自己实现 SpringMVC 底层机制 系列之-实现任务阶段 6-完成控制器方法获取参数-@RequestParam
  • 数据可视化:图表绘制详解
  • 【中危】Apache Ivy<2.5.2 存在XXE漏洞 (CVE-2022-46751)
  • C#使用自定义的比较器对版本号(编码)字符串进行排序
  • AI在日常生活中的应用:从语音助手到自动驾驶
  • Windows10查看图片的分辨率
  • Spring事务和事务传播机制(2)
  • 计算机视觉 -- 图像分割
  • ubuntu18.04复现yolo v8之CUDA与pytorch版本问题以及多CUDA版本安装及切换
  • Redis三种模式——主从复制,哨兵模式,集群