vue proxy代理原理,vue配置反向代理
本文主要介绍vue中的proxyTable反向代理(对亲测有用),有很好的参考价值。希望对你有帮助。如有错误或不足之处,请不吝赐教。
目录
代理表反向代理1。打开vue project-config-index.js2打开一个vue第3页。实现原理3.npm run dev反向代理实现原理程序运行过程
proxyTable反向代理
网上有很多proxyTable的设置,以前从来没有管理过,但是新公司的项目需要用到,所以我彻底研究了一下,结果走了一个大弯路!
注:每次设置完proxyTable,请一定要重启,刷新不好使 npm run dev!
开始之前,请记住上面的操作。我在这里走了一个大弯路,总以为刷新页面就可以了。但是,webpack似乎是一个特殊的存在,它不执行。好了,让我们开始配置:
1.打开vue项目-config-index.js
并找到proxyTable属性
代理表:{
/api: {///api :匹配
target: 3358192 . 168 . 31 . 167:8091 ,//接口的域名
//secure: false,//如果是https接口,需要配置这个参数。
ChangeOrigin: true,//如果接口是跨域的,需要配置这个参数。
PathRewrite: {//如果接口本身没有/api需要通过PathRewrite重写地址。
^/api: /
}
}
}
描述:请自行了解如何跨域。
2.打开一个vue页面
设置一个按钮,和一个方法,注意请求url写法
3358192 . 168 . 31 . 167:8091/list users,这是我在电脑上用node.js写的一个简单的get请求。至于测试API,我自己解决。
/api/listUsers
/api相当于http://192.168.31.167:8091
Webpack,它会自动为您转接。
handleTest() {
let _ this=this
//axios链接vue,做一个全局情况。
_这个。$axios.get(/api/listUsers )。然后(函数(响应){
console.log(响应);
})。catch(函数(错误){
console.log(错误);
});
},
3.npm run dev
去查看你的页面,并点击按钮
提示:当跨域开发时,有两种选择。
允许后台交叉条件设置,具体实现问你后台。然后前台就可以正常来访了。(最简单,最暴力,但是对后台不安全)如果不设置后台,那么前台必须设置交叉配置,也就是proxyTable配置。具体原理是自己搜索webpack的代理配置。一定要记得重启,npm运行dev!
反向代理的实现原理
实现原理
反向代理需要Nginx。反向代理是在服务器端处理的。首先修改hosts文件,将域名指向开发者的计算机本身,伪装成服务器,然后通过nginx转发不同的请求,将静态资源指向开发者本地计算机的资源,将接口指向实际的服务器。
可以理解为餐厅设置在冥界楼下。你下楼买酱排骨,饭店自己把饭煮了,酱排骨偷偷去别的饭店买。
程序运行过程
浏览器访问页面,假设你访问淘宝页面:taobao.com/index.html.
Taobao.com域名解析首先检查主机文件配置,当发现taobao.com域名指向127.0.0.1时,它向该机器发起请求。
NGX收到taobao.com/index.html请求,根据nginx的配置,会将此请求转发到127.0.0.1:3000。
浏览器运行index.html文件并发起taobao.com/api/getNew请求。
NGX接收到taobao.com/api/getNew请求,根据nginx的配置,会将这个请求转发到真正的淘宝服务器。
淘宝服务器将数据返回给nginx,然后返回给浏览器执行。
以上个人经历,希望能给大家一个参考,也希望大家多多支持我们。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。