安装

npm install axios

封装

新建utils文件夹,新建axios.ts文件暴露request

import axios from 'axios'

const request = axios.create({
    baseURL: "http://localhost/proj1",
    timeout: 5000
})
export default request

配置跨域

在项目根目录下的vite.config.ts文件中新增配置

  server: {
    proxy: {
      '/proj1': {
        target: 'http://localhost',
        changeOrigin: true,
        rewrite: (path) => path.replace(/^\/proj1/, ''),
      },
    },
  },

同步等待

async function getUser(){
	try{
		await axios.get("/info?id="+id)
	}catch(err){
	
	}
}

使用

  • get
request.get("/test")
.then((result)->{ //这里已经有base-url了会拼接在一起
	console.log(result.data)//真正返回的结果
})
.catch((err)->{ //异常处理
    console.log(err)
})
  • get + param
//方式一
request.get("/test?id=5")
.then((result)->{ //这里已经有base-url了会拼接在一起
	console.log(result.data)//真正返回的结果
})
.catch((err)->{ //异常处理
    console.log(err)
})
//方式二
request.get("/test",{
	params:{id=5}
})
.then((result)->{ //这里已经有base-url了会拼接在一起
	console.log(result.data)//真正返回的结果
})
.catch((err)->{ //异常处理
    console.log(err)
})
  • post->form

  • post->json