温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

vue中的代理转换机制proxyTable配置项

发布时间:2020-03-02 12:43:11 来源:网络 阅读:614 作者:凯哥Java 栏目:开发技术

随着互联网技术的发展,现在很多互联网公司分工越来越明确了。后端开发人员只负责后端开发及接口的提供,前端人员负责按照设计图出页面及套页面,这个时候就出现了一种新的开发模式。即前后端分离模式。前端框架更新及普及更加推动了前后端分离开发。这种模式缩短了项目开发周期。但是,有时候会会出现比较尴尬的情况。比如再使用VUE写项目的时候,就会遇到。

vue中的代理转换机制proxyTable配置项

在写vue项目的时候,后台没有及时提供数据,我们前台会在本地模拟一些数据进行开发测试,在axios请求这些假数据的时候,我们需要添加一个请求路径,按道理来说我们写上本地数据路径即可,但是在项目上线的时候就得修改这些本地路径,这样很容易出现漏改,所以,vue给出了一个代理转换机制。

首先,在static文件夹下新建一个mock文件夹用于存放假数据index.json文件:

vue中的代理转换机制proxyTable配置项

其次,在 .gitignore 文件,添加static/mock ,目的以后在提交代码的时候既不会提交到本地git仓库中也不会提交到线上git仓库中;

再次,在你的组件中写好axios请求事件: 

methods:{

  getHomeInfo (){

     axios.get('/api/index.json')

         .then(this.getHomeInfoSuccess)

  },

  getHomeInfoSuccess(res){

     console.log(res)

  }

},

mounted(){

  this.getHomeInfo()

}


 然后,找到 config -- index.js -- proxyTable: { }配置项:

vue中的代理功能(其实是 webpack-dev-server提供的此方法),使用转发机制,能将 api/index.json 请求路径转发到 static/mock/index.json 文件下

proxyTable: {

 '/api':{

   target:'http://localhost:8080',

   pathRewrite:{

     '^/api':'/static/mock'

   }

 }

},


最后,可以输入localhost:8080/static/mock/index.json访问到你的假数据(因为上面提到了,static文件夹里的文件从外部是可以访问到的);你也可以启动项目将数据打印到控制台查看;



向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI