jquery中axios和ajax的区别:1、axios是通过promise实现对ajax技术的一种封装,而jquery将请求技术进行了封装变成了ajax;2、axios是一个基于Promise的HTTP库,而ajax是对原生XHR的封装。
本教程操作环境:windows10系统、jquery3.6.0版本、Dell G3电脑。
jquery中axios和ajax有什么区别
axios和ajax的区别:
axios是一个基于Promise的HTTP库,而ajax是对原生XHR的封装;
ajax技术实现了局部数据的刷新,而axios实现了对ajax的封装。
axios是通过promise实现对ajax技术的一种封装,就像JQuery实现ajax封装一样。
简单来说就是:ajax技术实现了网页的局部数据刷新,axios实现了对ajax的封装。也就是说,jQuery 将请求技术进行了封装 变成了 ajax , 而通过 promise 又把 ajax 进行封装就成了 axios。axios是ajax,ajax不止axios。
有了ajax,为什么还要使用axios?
在现在的前端 mvvm 模式下 axios 更适合于数据请求。
扩展知识:
ajax定义
简短地说,在不重载整个网页的情况下,AJAX 通过后台加载数据,并在网页上进行显示
jQuery为我们将原生ajax进行了封装,现在我们只需要一行简单的代码,就可以实现 AJAX 功能。
1.底层接口
$.ajax({ url:'', //请求地址 method:'', //请求方式 data:{}, //传参 无参可不写 success:function(res){ //请求成功的回调函数 }, error:function(err){ //请求失败的回调函数 }, })
2.快捷方式
$.get(url,data,function(res){}) $.post(url,data,function(res){})
axios请求的使用
Axios 是一个基于 promise (Promise 是异步编程的一种解决方案)的 HTTP 库,可以用在浏览器和 node.js 中
jQuery ajax:
本身是针对MVC的编程,不符合现在前端MVVM
基于原生的XHR开发,XHR本身的架构不清晰,已经有了fetch的替代方案
JQuery整个项目太大,单纯使用ajax却要引入整个JQuery非常的不合理(采取个性化打包的方案又不能享受CDN服务)
axios的原生使用:
axios({ url:'http://47.93.206.13:8002/user/login', // baseURL:'http://47.93.206.13:8002', method:'post', // params: 用于get请求 data:{ //用于post请求 username:'admin1', password:'123321' } }).then((res) => { console.log(res); })
axios快捷方法:
/ 引入 let axios=require('axios')//到当前node_modules找,找不到再往上找 // 封装写法 axios.get('http://47.107.65.238:8888/index/article/pageQuery?page=1&pageSize=10') .then(function (response) { console.log(response); })
视频教程推荐:jQuery视频教程