前端vue-cli3解决跨域的方案(配置proxy代理)

浏览器的跨域报错浏览器跨域报错
vue-cli2和cli3解决跨域的方法是有区别的,在这个点上绕了不少弯,proxyTable/proxy

其实方法很简单,重点在手动创建的根目录里vue.config.js的proxy配置,vue.config.js里的配置项都是可选的,我们只需要配置自己需要的部分就可以。

1. 修改vue.config.js

devServer: {
		open: true, //是否自动弹出浏览器页面
		host: "localhost",
		port: '8080',
		proxy: {
			'/api': {
				target: 'https://www.sprouter.net',   // 请求服务器根路径,这里必须加上 http/https://
				changeOrigin: true,    // 是否跨域
				ws: true,   // websocket
				pathRewrite: {    // 重写路径: 当检测到请求地址里包含 /v1 时,将此路径进行跨域代理操作
					'^/api': '/api'
				}
			}
		}
	}

2. 修改main.js中axios请求根路径

import axios from 'axios'
// 配置请求的跟路径
axios.defaults.baseURL = '/'

3. 发送请求

this.$axios.post('/api/v1/get_token', this.loginForm).then(res => {
	console.log(res)
}).catch(err => {
	console.log(err)
})

参考链接:
vue-cli proxyTable中跨域中pathRewrite 怎么用
关于vue-cli3中配置请求跨域的问题

  • 4
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值