vue使用proxy来解决跨域问题

vue使用proxy来解决跨域问题


一个项目中,接口是同一路径但是端口号不同,不同的功能请求不同的端口号这个需求如何进行proxy来解决跨域,vue2.0

vue.config.js

const { defineConfig } = require('@vue/cli-service')
module.exports = defineConfig({
   transpileDependencies: true,
   publicPath: './'
  devServer: {
    proxy: {
         '/api': {
          target: 'https://aaaa:8202',
          changeOrigin: true,    //允许跨域
          //重定向的作用,一般情况下接口中都含有api,如果项目接口中含有api并且target中写了api,则需要重定向替换,不写的话则不需要,根据项目需要来,我的项目中没有api,所以没写
          pathRewrite: {            
            '^/api': '',         //重定向为空字符串时表示请求的地址为:  https://aaaa:8202/abc/getAbcList
            '^/api': 'api'       //这种写法请求地址为:https://aaaa:8202/api/abc/getAbcList
         }
       },
       '/web': {
          target: 'https://aaaaa:8203',
          changeOrigin: true,
          pathRewrite: {
              '^/web': ''
          }
       },
      '/five': {
       target: 'https://aaaa:8204',
        changeOrigin: true,
        pathRewrite: {
           '^/five': ''
        }
     }
   }
  }
})
api.js

import request from '../utils/request'

// 测试接口
export function getAdminList (data) {
  return request({
    method: 'post', // 请求方式
    url: 'api/abc/getAbcList', // 接口路径
    params: data, // 数据
    headers: {
      'Content-Type': 'application/x-www-form-urlencoded'
    }
  })
}

// 测试接口
export function addNewAdmin (data) {
  return request({
    method: 'post', // 请求方式
    url: 'web/abc/getAbcList', // 接口路径
    data: data
  })
}

// 测试接口
export function addNewAdmin (data) {
  return request({
    method: 'post', // 请求方式
    url: 'five/abc/getAbcList', // 接口路径
    data: data
  })
}

request.js的封装可以参考这个:vue封装axios

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值