简单了解一下axios

简单了解一下axios

axios是什么

根据菜鸟教程的定义,axios是一个基于 Promise 的 HTTP 库,可以用在浏览器和 node.js 中。一句话解释觉着有点抽象,就举例axios是用来干什么的,比较方便理解。

Axios可以用来:支持Promise API、拦截请求和响应、取消请求、自动转换JSON数据,还是不理解,接着往下看。

为什么要有axios

为什么会有Axios?说到Axios我们可以从Ajax开始说起。最初的旧浏览器页面在向服务器请求数据时,由于返回的是整个页面的数据,所以整个页面都会强制刷新一下,这对于用户来讲并不是很友好。因为当我们只需要请求部分数据时,服务器返回给我们的确是整个页面的数据,这样会造成网络资源的占用,即十分消耗网络资源。为了提高数据请求效率,异步网络请求Ajax就应运而生了,它可以在页面无刷新的情况下请求数据。因此,这样一来,当我们只是需要修改页面的部分数据时,可以实现不刷新页面的功能。(从别人那里学习到的)

axios如何使用

安装

使用cdn

使用npm

$ npm install axios

使用 bower

$ bower install axios

使用yarn

$ yarn add axios

axios基础用法(get、post、put 等请求方法)

Axios常用的几种请求方法:get,post,put,patch,delete

get:常用来获取数据post:常用来提交数据(表单提交与文件上传)put:更新数据(只将修改的数据推送到后端(服务端))patch:更新数据(所有数据推送到服务端)delete:删除数据

get

模式一:基于Promise机制处于异步操作的结果

.then() 和 .catch() 是用于处理基于 Promise 的异步操作的结果。Axios 的方法(如 axios.get()、axios.post() 等)返回一个 Promise,因此需要使用 .then() 和 .catch() 来处理请求的成功响应和错误。

axios.get ('https://www.runoob.com/try/ajax/json_demo.json')

.then(response => {

console.log(response.data);

})

.catch(error => {

console.error(error);

});

这不是固定的结构,但它是处理 Axios 请求的常见模式。你也可以使用 async/await 语法来处理 Promise,使代码更简洁:

模式二:async/await 语法

async Function (){

const response = await axios.get('https://api.example.com/data');

console.log(response.data)

}

后续想要添加错误处理,可以使用try,catch方法

async function() {

try {

const response = await axios.get('https://api.example.com/data');

console.log(response.data);

} catch (error) {

console.error('Error fetching data:', error);

}

}

async/await 模式可以使异步代码更易于阅读和维护。await 关键字用于等待 Promise 解析

post

axios.post('https://api.example.com/data', {

title: 'foo',

body: 'bar',

userId: 1

})

.then(response => {

console.log(response.data);

})

.catch(error => {

console.error(error);

});

put

axios.put('https://api.example.com/data/1', {

title: 'foo',

body: 'baz',

userId: 1

})

.then(response => {

console.log(response.data);

})

.catch(error => {

console.error(error);

});

patch

axios.patch('https://api.example.com/data/1', {

title: 'updated title'

})

.then(response => {

console.log(response.data);

})

.catch(error => {

console.error(error);

});

axios.request() 发送不同类型的请求

使用 axios.request() 方法,可以自定义请求配置:

axios.request({

method: 'post',

url: 'https://api.example.com/data',

data: {

title: 'foo',

body: 'bar',

userId: 1

}

})

.then(response => {

console.log(response.data);

})

.catch(error => {

console.error(error);

});

axios.request() 是一个非常灵活的方法,可以通过配置对象来发送任何类型的 HTTP 请求。它允许你自定义请求方法、URL、请求头、请求体、查询参数等,适合需要精细控制请求的场景。无论是获取数据、提交数据、更新数据还是删除数据,都可以使用 axios.request() 来实现。

新手小白的见解,向读者推荐Axios使用方法详解,从入门到进阶-CSDN博客

相关任务

365速发app下载平台注册 睡眠不足长痘痘怎么办 睡眠不足长痘,就该这么调理!
盒子365app下载 dnf年套宠物哪个好

dnf年套宠物哪个好

📅 09-05 👁️ 1283
盒子365app下载 汉语词典> 觞酌

汉语词典> 觞酌

📅 08-23 👁️ 3393