axios和ajax的区别在哪里?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了axios和ajax的区别在哪里?相关的知识,希望对你有一定的参考价值。
对于axios和ajax的区别我想还是有一部分知道的,但也有不知道的,那么我就给大家说说,其实他们两者的区别如下:
axios是通过promise实现对ajax技术的一种封装,它最早出现的发送后端请求技术,核心使用XMLHttpRequest对象,多个请求之间如果有先后关系的话,单来说就是ajax技术实现了局部数据的刷新,axios实现了对ajax的封装,axios有的ajax都有,ajax有的axios不一定有,这就是他们的只有区别。
但是也可从它们的优缺点来看,也可以知道他们的区别:
第一个方面,从浏览器中创建, 客户端支持防止csrf, 提供了一些并发请求的接口,拦截请求和相应,转换请求和响应数据,自动转换json数据,最后就是体积小,这样极大的方便它的使用。
第二个方面,首先它用于浏览器和node环境下的http请求,基于promise异步,其次就是可以自动将数据转换为json格式,最后就是支持防止 跨站请求伪造,所以它也可以说是强大的。
从第三个方面,对于ajax,它是从浏览器中创建以及就是客户端支持防止跨站请求的伪造,提供了方便的很多的操作 ,拦截请求和响应,转换请求和响应数据,它还可以自动转换JSON数据。ajax本身是针对mvc编程,不符合现在前端mvvm的浪潮, 基于原生XHR开发,XHR本身的架构不清晰,不符合关注分离的原则,配置和调用方式非常混乱,而且基于事件的异步模型不友好。
参考技术A 简单来说: ajax技术实现了网页的局部数据刷新,axios实现了对ajax的封装。axios是ajax ajax不止axios。 参考技术B axios和ajax区别,是通过promise实现对ajax技术的一种封装,就像jQuery实现ajax封装一样。简单来说:ajax技术实现了网页的局部数据刷新,实现了对ajax的封装。是ajaxajax不止。 参考技术C 区别在于ajax技术实现了网页的局部数据刷新,axios实现了对ajax的封装。axios和ajax区别
参考技术A1、功能不同
Axios:Axios 是一个基于 promise 的 HTTP 库,可以用在浏览器和 node.js 中。
AJAX:AJAX 是与服务器交换数据并更新部分网页的,在不重新加载整个页面的情况下Ajax = 异步 JavaScript 和 XML(标准通用标记语言的子集)。
2、特点不同
Axios从浏览器中创建 XMLHttpRequests,可以从 node.js 创建 http 请求,支持 Promise API,可以拦截请求和响应、转换请求数据和响应数据。
Ajax是一种用于创建快速动态网页的技术,Ajax是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。通过在后台与服务器进行少量数据交换,Ajax可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。
3、部分参数不同
Axios:
axios(
url: 'http://jsonplaceholder.typicode.com/users',
method: 'get',
responseType: 'json', // 默认的
data:
//'a': 1,
//'b': 2,
).then(function (response)
console.log(response);
console.log(response.data);
).catch(function (error)
console.log(error);
)
Ajax:
$.ajax(
url: 'http://jsonplaceholder.typicode.com/users',
type: 'get',
dataType: 'json',
data:
//'a': 1,
//'b': 2,
,
success: function (response)
console.log(response);
)
扩展资料:
axios的实例方法:
以下是可用的实例方法。指定的配置将与实例的配置合并
axios#request(config)
axios#get(url[, config])
axios#delete(url[, config])
axios#head(url[, config])
axios#post(url[, data[, config]])
axios#put(url[, data[, config]])
axios#patch(url[, data[, config]])
以上是关于axios和ajax的区别在哪里?的主要内容,如果未能解决你的问题,请参考以下文章