前言
在学习过程中,不仅学习了ajax请求,还有axios请求,但是这两者各有什么优点和缺点,两者又有什么区别,到底谁更好一点呢。
关于ajax
简介
Ajax
即“Asynchronous Javascript And XML”(异步 JavaScript 和 XML),是指一种创建交互式网页应用的网页开发技术 Ajax = 异步 JavaScript 和 XML 或者是 HTML(标准通用标记语言的子集) Ajax 是一种用于创建快速动态网页的技术 Ajax 是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术 通过在后台与服务器进行少量数据交换,Ajax 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新 传统的网页(不使用 Ajax)如果需要更新内容,必须重载整个网页页面。
优点
- 在页面无刷新的情况下与服务器通讯维护数据,用户体验好
- 异步通讯方式,不打断用户操作,响应能力迅速
- 把一些请求转到客户端,“按需取数据”,最大程度的减少冗余请求和对服务器造成的负担
- 基于标准化的并被广泛支持的技术,不需要下载浏览器插件或者小程序
使用
1.原生ajax
ajax 的核心是 JavaScript 对象 XmlHttpRequest
2. jquery将ajax封装成了一个函数 $.ajax()
,我们可以直接用这个函数来执行ajax请求
常用参数:
url : 请求的 URL 地址 type : 请求方式,默认是 GET
,常用的还有 POST
async : 请求是否异步,默认值是 true
,表示异步,false
表示同步 dataType : 返回的数据类型,常用的是 json
格式 contentType: 请求的数据类型,默认为"application/x-www-form-urlencoded
" data : 请求的数据参数 success : 请求成功后的回调函数 error : 请求失败后的回调函数。
关于axios
简介
axios
是一个基于promise 的 http 库,可以用于浏览器和 nodejs 中
优点
- 从浏览器中创建 XMLHttpRequests
- 从 node.js 创建 http 请求
- 支持 Promise API
- 拦截请求和响应
- 转换请求数据和响应数据
- 取消请求
- 自动转换 JSON 数据
- 客户端支持防御 XSRF
使用
通过向 axios 传递相关配置来创建请求
常用参数:
url : 请求的 URL 地址 method : 请求方式,默认是 GET
,常用的还有 POST
baseURL: baseURL
将自动加在 url
前面,除非 url
是一个绝对 URL responseType : 返回的数据类型,常用的是 json
格式 headers: 请求的自定义请求头 params : 与请求一起发送的 URL 参数 data : 请求的数据参数,只适用于 PUT
, POST
, 和 PATCH。
总结
ajax和axios的根本区别:
axios
是基于promise实现的对 ajax
技术的一种封装,两者用法基本一样,个别参数不同,axios 封装了一些更简便的 ajax 操作 axios 是 ajax,但是 ajax 不限于 axios