时间:2021-05-26
vue.js 配置了前端代理却未能生效
记录一下最近踩得小坑:
配置完代理后请一定重新执行(重要,非常重要!)
npm run dev
若重新执行命令后,代理仍为生效,请按下方步骤进行检查:
检查index.js文件中的代理是否配置正确,示例如下:
proxyTable: { '/api': { //代理标识 target: 'http://xxx.xxx.xxx',//指向的实际地址 changeOrigin: true, // 允许跨域 pathRewrite: { // 标识替换 // 原请求地址为 /api/getData 将'/api'替换''时, // 代理后的请求地址为: http://xxx.xxx.xxx/getData // 若替换为'/other',则代理后的请求地址为 http://xxx.xxx.xxx/other/getData '^/api': '' } } },检查请求路径是否正确,以上方所配置的代理为例
// 请确认原请求中是否包含代理标识符 // 请确认接口 http://xxx.xxx.xxx/getData直接访问是否正常 this.$axios.get('/api/getData').then((r)=>{ console.log(r) })补充知识:vue使用proxyTable设置接口代理
1、修改config/index.js里proxyTable
proxyTable: { '/api': { target: 'http://192.168.42.182:8080', changeOrigin: true, pathRewrite: { '^/api': '/' } },}2、修改config/dev.env.js
module.exports = merge(prodEnv, { NODE_ENV: '"development"', API: '"/api"' // 加入这一句})3、设置axios的baseUrl
export default { get (url, params) { return axios({ method: 'get', baseURL: process.env.API, // 修改这里 url, params, timeout: 100000 }).then((response) => { return checkStatus(response) }).then((res) => { return checkCode(res) }) }}4、重启服务器 npm run dev就好啦~
以上这篇Vue使用Proxy代理后仍无法生效的解决就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
方法后台更改header使用http-proxy-middleware代理解决(项目使用vue-cli脚手架搭建)Jqueryjsonp后台更改headerhe
Webpackdevserver使用http-proxy解决跨域问题文档资料webpack关于webpack-dev-server开启proxy的官方介绍Vue
Vue框架开发的时候,会遇到跨域的问题,可在config/index.js里配置proxyTable内容,使用proxy代理。//config/index.js
背景通常我们有一份webpack.dev.config.js使用webpack-dev-server的proxy,代理到开发服务器,来解决本地跨域问题。假如项目
使用Nginx反向代理解决跨域问题(vue.js使用代理去掉vue.js因为跨域而触发的options请求)我们的项目还是需要node.js作为容器的一、Win