vue3 vite+axios 代理配置

axios封装

根据不同项目叠加需求

import axios from 'axios'

// export 将 service 传出去
export const service = axios.create({
	// baseURL: process.env.VUE_APP_BASE_API, //变量地址
	baseURL:'api_v3', //重点,此处与代理保持一致!!!!
	timeout: 30000, 
	withCredentials: true, // 异步请求携带cookie
	headers: {
			// 设置后端需要的传参类型
			'Content-Type': 'application/json',
			'token': 'your token',
			'X-Requested-With': 'XMLHttpRequest',
		},
})

// request interceptor
service.interceptors.request.use(
	function (config) {
		// 在发送请求之前做些什么
		return config
	},
	function (error) {
		// 对请求错误做些什么
		console.log(error)
		return Promise.reject(error)
	}
)

// 拦截器
service.interceptors.response.use(
	function (response) {
			console.log(response)
			// 2xx 范围内的状态码都会触发该函数。
			// 对响应数据做点什么
			// dataAxios 是 axios 返回数据中的 data
			const dataAxios = response.data
			// 这个状态码是和后端约定的
			const code = dataAxios.reset
			return dataAxios
		},
		function (error) {
			// 超出 2xx 范围的状态码都会触发该函数。
			// 对响应错误做点什么
			console.log(error)
			return Promise.reject(error)
		}
)

配置代理

在根目录创建vite.config.js文件

const path = require('path')

module.exports = {
    hostname: '0.0.0.0',
    port: 3000,
    // 反向代理
	proxy: {
		'/api_v3': {
			target: 'http://XXXX.cn',
			changeOrigin: true,
			// rewrite: path => path.replace(/^\/api_v3/, '')该写法俺的项目出错了!!,找了非常久的原因,换回以前的
			pathRewrite: {
			  // 路径重写
			  '/api_v3': '' // 用'/api'代替target里面的地址
			}
		}
	}
    
}

单页面使用

import {service } from '../request/http' 

function get_data() {
		service.get('/XXXX.php').then(res=>{
		
		})
	}
### 回答1: Vue3 是一个流行的 JavaScript 框架,它的核心是响应式编程和组件化开发的思想。Vite 是一个用于快速构建现代化前端应用的构建工具,它基于 ESModules 和原生 ES2015+ 语法实现了一种新的开发模式。Axios 是一个流行的基于 Promise 的 HTTP 客户端,它被广泛用于前端和后端的数据请求和交互。 Vue3Vite 的结合使用可以带来更好的开发体验和性能优化。Vue3 的响应式系统经过重新设计和优化,使得响应式数据变更的检测和更新更加高效。在 Vite 的开发模式下,Vue3 可以利用模块的特性进行优化,可以更快地加载和热更新组件,提高开发效率。Vite 还支持按需编译,只编译被用到的模块,减少不必要的编译时间和资源消耗。 Axios 是一个功能强大的 HTTP 客户端,它可以在浏览器和 Node.js 中运行。Axios 提供了易于使用且一致的 API,可以轻松地发送异步请求并处理响应。Vue3Axios 的结合可以使得在 Vue3 应用中进行数据请求更加方便和灵活。可以将 Axios 集成到 Vue3 的组件中,并在需要的时候发送请求并更新响应数据。Vue3 的响应式系统可以自动检测到数据变更,并更新视图,使得数据和视图保持同步。 综上所述,Vue3ViteAxios 的组合可以为我们提供更好的开发体验和性能优化。Vue3 提供了响应式编程和组件化开发的思想,Vite 提供了快速构建现代化前端应用的能力,而 Axios 则为我们提供了方便的数据请求和交互。 ### 回答2: Vue3Vue.js的最新版本,具有更高的性能和更好的开发体验。Vite是一个面向现代浏览器的构建工具,专注于开发时的快速冷启动和热模块替换。而Axios是一个基于Promise的HTTP客户端,可以在浏览器和Node.js中发送异步HTTP请求。 Vue3Vite是互补的工具。Vue3的新特性和优化可以提供更好的性能和开发体验,而Vite则可以让开发者更快地启动应用程序和热加载模块。Vite使用了ES模块的优势,可以实现快速的启动和重载,并且支持按需构建,只构建需要的模块,减少了开发中的不必要的构建时间。 Axios是一个常用的HTTP客户端库,可以与Vue3Vite结合使用。Axios可以方便地发送HTTP请求,并处理响应数据。Axios支持Promise API,可以使用async/await进行异步处理,使代码更加简洁和易于阅读。通过使用Axios,我们可以在Vue3Vite中轻松地与后端API进行通信,获取数据并更新应用程序的状态。 总结来说,Vue3提供了更好的性能和开发体验,而Vite可以提供快速的启动和热模块替换功能。Axios则是一个方便的HTTP客户端库,可以与Vue3Vite一起使用,方便地进行后端API通信。通过结合使用这些工具,我们可以高效地进行前端开发,提升开发效率和用户体验。 ### 回答3Vue3是一种现代化的JavaScript框架,用于构建用户界面。它具有快速、易于上手和可扩展的特点。Vite是一个基于ES模块的开发构建工具,它可以快速启动项目,并具有快速热重载和即时开发的能力。Axios是一个基于Promise的HTTP客户端,它可以在浏览器和Node.js中发送HTTP请求。 Vue3Vite的结合是非常强大的。Vite在开发过程中能够提供快速的热重载和即时开发的能力,使开发者可以更加高效地进行代码调试和预览。而Vue3提供了一种声明式的语法来构建用户界面,使代码更具可读性和可维护性。 在使用Vue3Vite进行开发时,我们可以使用Axios作为HTTP客户端来发送请求。Axios提供了丰富的功能,例如发送GET、POST请求、设置请求头、处理请求错误等。我们可以在Vue3组件内部使用Axios来发送请求,并将返回的数据展示在页面上。 使用Axios发送请求的步骤如下: 1. 在项目中安装Axios:可以使用npm或yarn来安装Axios。 2.Vue3组件中引入Axios:使用import语句将Axios库引入到组件中。 3. 在组件中使用Axios发送请求:可以使用Axios的方法,例如get、post等,来发送HTTP请求。 4. 处理返回的数据:Axios会返回一个Promise对象,我们可以使用then方法来处理返回的数据。 通过使用Vue3ViteAxios,我们可以快速构建现代化的Web应用程序。它们的结合可以提供更好的开发体验和更高的开发效率。无论是开发小型项目还是大型项目,Vue3ViteAxios都是很好的选择。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值