axios的用法

当然,axios是一个非常流行的基于Promise的HTTP客户端,用于浏览器和node.js中发送请求。下面我会用分点的方式来介绍axios的用法:

安装axios

在你的项目中,你可以通过npm或yarn来安装axios。打开终端并执行以下命令之一:

npm install axios

yarn add axios

发送GET请求

使用axios.get(url[, config])方法发送GET请求。其中url是请求的URL地址,config是一个可选的配置对象。

示例:

javascript

import axios from 'axios';

axios.get('https://api.example.com/data')

.then(function (response) {

console.log(response.data);

})

.catch(function (error) {

console.error(error);

});

发送POST请求

使用axios.post(url[, data[, config]])方法发送POST请求。其中url是请求的URL地址,data是请求的数据对象,config是一个可选的配置对象。

示例:

javascript

import axios from 'axios';

const data = {

name: 'John Doe',

email: 'johndoe@example.com'

};

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

.then(function (response) {

console.log(response.data);

})

.catch(function (error) {

console.error(error);

});

请求配置

在发送请求时,你可以通过config对象来设置请求的各种配置。比如:

params: 请求的查询参数对象

headers: 请求头对象

timeout: 请求超时时间(单位:毫秒)

withCredentials: 是否携带跨域请求的凭证

cancelToken: 用于取消请求的CancelToken对象

responseType: 响应数据的类型(如'json'、'blob'、'document'等)

示例(以GET请求为例):

javascript

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

params: {

ID: 12345

},

headers: {

'Content-Type': 'application/json'

},

timeout: 5000

});

拦截器和转换请求/响应数据

axios支持请求/响应拦截器,你可以在请求发送前或响应返回后进行一些处理。

axios还可以转换请求数据和响应数据,比如自动将JSON字符串转换为JavaScript对象。

其他方法

axios还支持PUT、DELETE、PATCH等其他HTTP方法,以及axios.all用于批量发送多个请求。

相关推荐
之恒君14 小时前
Node.js 模块加载 - 4 - CJS 和 ESM 互操作避坑清单
前端·node.js
Esun_R18 小时前
当 LLM 开始连接真实世界:MCP 的原理、通信与工程落地
node.js·openai·mcp
爱写程序的小高20 小时前
npm ERR! code ERESOLVE npm ERR! ERESOLVE unable to resolve dependency tree
前端·npm·node.js
程序员爱钓鱼20 小时前
Node.js 编程实战:测试与调试 - 单元测试与集成测试
前端·后端·node.js
哟哟耶耶21 小时前
Plugin-webpack内置功能split-chunks-plugin配置打包代码分割
前端·webpack·node.js
SailingCoder1 天前
AI 流式对话该怎么做?SSE、fetch、axios 一次讲清楚
前端·javascript·人工智能·ai·node.js
天远数科1 天前
Node.js全栈实战:基于天远名下车辆数量查询API实现的智能资产核验组件
大数据·node.js
嫂子的姐夫1 天前
013-webpack:新东方
爬虫·python·webpack·node.js·逆向
爱写程序的小高1 天前
npm版本降级、nvm切换node版本、webpack版本与vue版本不一致
前端·npm·node.js
嚣张丶小麦兜1 天前
npm的应用
前端·npm·node.js