vue3项目之vite 配置代理跨域

vite 配置代理跨域

  • 单个代理端口的情况

http://110.42.184.111/api/room/room/getRoomList 代理成

http://localhost:5173/release/api/room/room/getRoomList

vite.config.ts 加入

// 配置代理
server: {
    // 本地端口号
    host: 'localhost',
    port: 5173,
        
    proxy: {
        // 自定义前缀
        '/release': {
            
            // 目标端口号
            target: 'http://110.42.184.111',
            
            // 路径重写:去掉自定义前缀
            rewrite: path => path.replace(/^\/release/, '')
        }
    }
}

http.ts

const defaultConfig = {
    timeout: 5000,
    
    // 生产环境
    // baseURL: import.meta.env.PROD ? 'http://110.42.184.111' : 'http://localhost:3000/release'
    
    // 开发环境
    baseURL: 'http://localhost:5173/release'
}

api/index.ts

// 获取房屋列表
export const reqgetRoomList = function (params) {
    return http.httpRequestGet('/api/room/room/getRoomList', params)
}
  • 多个端口的情况
proxy: {
    // 自定义前缀1
    '/release': {

        // 目标端口号1
        target: 'http://110.42.184.111',

        // 路径重写:去掉自定义前缀
        rewrite: path => path.replace(/^\/release/, '')
    },
        
    // 自定义前缀2
    '/release2': {

        // 目标端口号2
        target: 'http://110.42.184.122',

        // 路径重写:去掉自定义前缀
        rewrite: path => path.replace(/^\/release2/, '')
    }
 
}

http.ts:baseURL 不能写死

const defaultConfig = {
    timeout: 5000,
       
    // 开发环境
    baseURL: 'http://localhost:5173'
}

api/index.ts:需要区分前缀!

export const reqgetRoomList = function (params) {
    return http.httpRequestGet('/replace/api/room/room/getRoomList', params)
}

export const reqgetRoomDetail = function (params) {
    return http.httpRequestGet('/replace2/api/room/room/getRoomDetail', params)
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

cocoonne

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值