vue.config.js文件中的proxy属性的相关分析
例子:proxy:{‘api’:{target:http://22.11.44.88:8090/demo,change:true,pathRewrite:{‘api’:’’}}}架构:
配置例子:
proxy:{
‘/api’:{
target:http://22.11.44.88:8090/demo
,
change:true,
pathRewrite:{
‘^/api’:’’
}
}
}
备注:’/api’可以写为[’/api’],就是这里可以是字符串类型也可以是数组类型
请求响应架构:
浏览器<——>Vue服务器<——>后台服务器
备注:Vue服务器提供静态资源的服务和作为后台服务器的反向代理服务器得
配置的proxy后能实现反向代理,解决跨域问题
流程:
假如浏览器的请求url是http://11.22.33.44:8080/api/user/getUsers的话,http://11.22.33.44:8080是Vue服务器的地址,这个请求Vue服务器来接收,剩下/api/user/getUsers;
反向代理配置中的/api会去匹配路径开头的,如果匹配不上的话那就Vue服务器自己处理(实际是请求静态资源的);
如果匹配的上那就需要反向代理这个请求了,使用target属性值拼接(注意是拼接不是替换),这个url为http://22.11.44.88:8090/demo/api/user/getUsers
pathRewrite即路径重写:’^/api’:’'意味着如果拼接后的url里不应有这个匹配的/api的话就用空字符串替换掉,得到最终路径为http://22.11.44.88:8090/demo/user/getUsers
最后反向代理向后台服务器发送请求,并把响应数据转发给浏览器,解决跨域的问题。
更多推荐
所有评论(0)