vue3.x之全局配置axios以及使用get post请求

本文介绍了如何在Vue项目中全局安装和配置Axios,通过在main.js文件中导入并挂载到全局属性,设置默认的API根目录,简化后续的HTTP请求。示例展示了如何进行GET和POST请求,以及如何处理返回的数据。通过这种方式,可以避免在每个组件中重复配置 Axios,提高代码复用性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

全局配置axios

安装

npm install axios --save

在main.js中全局配置

//引入
import axios from 'axios';
//全局挂载
const app = createApp(App);
app.config.globalProperties.$http = axios;//这里的$http就可以代替axios出现了
//配置根目录,(防止代码冗余
axios.defaults.baseURL = 'api根目录';
//注意后续使用app时要用 app.xxxxxx 而不是默认的createApp(App).xxxxxx
app.use(router).mount("#app");

使用axios

get请求

//$http === axios
this.$http
      .get("api具体要请求的地址", {
      //params 中以对象的形式给后端传参
        params: {
          这里是与后端约定好的变量名称: xxx,
        },
      })
      //回调函数
      .then((res) => {
        this.$data.xxx= res.data.data;//用本地变量接受返回的数据,这里的第二个data根据接口文档来
      });
      //this.$data.xxx注意访问本地变量时要在data前加$

post请求

大致与get类似,区别是get可以不传参

Vue3中,我们可以使用`axios`库来处理HTTP请求,无论是GET还是POST。首先,你需要安装`axios`,可以使用npm或yarn: ```bash npm install axios # 或者 yarn add axios ``` 然后,在组件中,你可以创建一个实例并使用它来发送请求: ```js // 定义axios实例 import axios from 'axios'; const service = axios.create({ baseURL: process.env.BASE_API, // api 的基础地址 timeout: 5000, // 请求超时时间 headers: { 'Content-Type': 'application/json', // 默认请求头,可按需修改 }, }); export default service; // 将axios实例导出供全局使用 ``` 接下来,在需要的地方使用这个实例发送GETPOST请求: ### GET请求示例 ```js // 使用export的service实例 import axios from './axios'; export function fetchData(params) { return axios.get('/api/data', { params }); } ``` ### POST请求示例 ```js export function postData(data) { return axios.post('/api/data', data); } ``` 在组件内部,你可以像这样使用这些函数: ```js export default { methods: { fetchDataExample() { fetchData({ param1: 'value1' }) .then(response => { console.log(response.data); }) .catch(error => { console.error('Error fetching data:', error); }); }, postDataExample() { postData({ key: 'value' }) .then(response => { console.log('Data sent successfully'); }) .catch(error => { console.error('Error sending data:', error); }); }, }, }; ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值