axios和ajax的区别及优缺点
ajax:
1、什么是ajax
  Ajax是对原⽣XHR的封装,为了达到我们跨越的⽬的,增添了对JSONP的⽀持。
  异步的javascript和xml,ajax不是⼀门新技术,⽽是多种技术的组合,⽤于快速的创建动态页⾯,能够实现⽆刷新更新数据从⽽提⾼⽤户体验。
2、ajax的原理?
  由客户端请求ajax引擎,再由ajax引擎请求服务器,服务器作出⼀系列响应之后返回给ajax引擎,由ajax引擎决定将这个结果写⼊到客户端的什么位置。实现页⾯⽆刷新更新数据。
3、核⼼对象?
  XMLHttpReques
4、ajax优缺点?
  优点 jquery实现ajax
    1、 ⽆刷新更新数据
    2、异步与服务器通信
    3、前端和后端负载平衡
    4、基于标准被⼴泛⽀持
    5、界⾯与应⽤分离
  缺点:
    1、ajax不能使⽤Back和history功能,即对浏览器机制的破坏。
    2、安全问题  ajax暴露了与服务器交互的细节
    3、对收索引擎的⽀持⽐较弱
    4、破坏程序的异常处理机制
    5、违背URL和资源定位的初衷
    6、ajax不能很好的⽀持移动设备
    7、太多客户端代码造成开发上的成本
5、Ajax适⽤场景
  <1>.表单驱动的交互
  <2>.深层次的树的导航
  <3>.快速的⽤户与⽤户间的交流响应
  <4>.类似投票、yes/no等⽆关痛痒的场景
  <5>.对数据进⾏过滤和操纵相关数据的场景
  <6>.普通的⽂本输⼊提⽰和⾃动完成的场景
6、Ajax不适⽤场景
  <1>.部分简单的表单
  <2>.搜索
  <3>.基本的导航
  <4>.替换⼤量的⽂本
  <5>.对呈现的操纵
7、代码
$.ajax({
type: 'POST',
url: url,
data: data,
dataType: dataType,
success: function () {},
error: function () {}
});
8、ajax请求的五个步骤
  1. 创建XMLHttpRequest异步对象
  2. 设置回调函数
  3. 使⽤open⽅法与服务器建⽴连接
  4. 向服务器发送数据
  5. 在回调函数中针对不同的响应状态进⾏处理
axios:
1、axios是什么
Axios 是⼀个基于 Promise 的 HTTP 库,可以⽤在浏览器和 node.js 中。
2、axios有那些特性?
  1、在浏览器中创建 XMLHttpRequests
  2、在node.js则创建http请求
  3、⽀持Promise API
  4、⽀持拦截请求和响应
  5、转换请求和响应数据
  6、取消请求
  7、⾃动转换成JSON数据格式
  8、客户端⽀持防御XSRF
3、执⾏get请求,有两种⽅式
/
/ 第⼀种⽅式将参数直接写在url中
<('/getMainInfo?id=123')
.then((res) => {
console.log(res)
})
.catch((err) => {
console.log(err)
})
// 第⼆种⽅式将参数直接写在params中
<('/getMainInfo', {
params: {
id: 123
}
})
.then((res) => {
console.log(res)
})
.catch((err) => {
console.log(err)
})
4、执⾏post请求,注意执⾏post请求的⼊参,不需要写在params字段中,这个地⽅要注意与get请求的第⼆种⽅式进⾏区别。
axios.post('/getMainInfo', {
id: 123
})
.then((res) => {
console.log(res)
})
.catch((err) => {
console.log(err)
})
axios和ajax的区别:
axios是通过Promise实现对ajax技术的⼀种封装,就像jquery对ajax的封装⼀样,简单来说就是ajax技术实现了局部数据的刷新,axios实现了对ajax的封装,axios有的ajax都有,ajax有的axios不⼀定有,总结⼀句话就是axios是ajax,ajax不⽌axios。
注:传统Ajax 指的是 XMLHttpRequest(XHR),
  axios和jQuer ajax都是对Ajax的封装

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。