VUE3 axios + api 封装 全局配置

安装axios

npm install axios

使用CDN引入

<script src="https://unpkg.com/axios/dist/axios.min.js"></script> 

/src/vite.config.js  vue的配置文件

import { fileURLToPath, URL } from 'node:url'

import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'

// https://vitejs.dev/config/
export default defineConfig({
  plugins: [vue()],
  resolve: {
    alias: {
      '@': fileURLToPath(new URL('./src', import.meta.url))
    }
  },

  
    server:{
      cors:true,  //默认启动并允许任何源
      open: false,  //默认打开浏览器
      port: 80,   //访问端口
      host: "0.0.0.0",  //访问的地址   0.0.0.0  即所有可访问的host
      proxy:{
        '/api': {
          target: `url`,   //后端目标地址 
          ws: true,
          secure: true,
          changeOrigin:true,   //是否允许跨域代理
          rewrite:(path) => path.replace(/^\/api/, '')    //重写路径   vue3写法  vue2写法:pathWrite:{}
        }
      },
    },
})

/src/utils/request.js 封装axios

import axios from 'axios'

const instace = axios.create({
    baseURL: '/api',   //vite.config.js文件中的代理端口
    timeout: 5000
})

//封装请求的api
const callapi = (method = "GET", url, data = {}) => {
    return instace({
      method,
      url,
      params: method === "GET" ? data : {},
      data: method === "POST" ? data : {},
    });
  };
  //封装GET请求函数
  export const getapi = (url, data) => callapi("GET", url, data);
  export const postapi = (url, data) => callapi("POST", url, data);
  

export default instace

/src/api/getList.js 要封装的接口

import {getapi,postapi} from '@/util/request'

export const getList = () => getapi('url')   //api 路径

 实际后端数据获取

<template>
  //你的代码
</template>

<script> 
import { getList } from '@/api/bloglist'  //引入api

export default {
  data(){
    return{
      tableData:[   //接取后端所传的值
      {
      date: '',
      name: '',
      description: '',
      },
      ]
    }
  },

  created(){
    this.getList()
  },

  mounted(){

  },

  methods:{
    getAllList(){
      getList().then(resp => {
        this.tableData = resp.data
        console.log(resp.data)
      })
    },
  }

}
</script>

成功获取到数据

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值