vue之解决跨域问题[通俗易懂]
2023-06-13 09:13:38 时间
大家好,又见面了,我是你们的朋友全栈君。
、、、、、、、、、、、仅对以前所学做复习记录使用、、、、、、、、、
同源策略:http协议、主机名、端口号都要相同。
因为浏览器同源策略的影响,向后端服务器请求数据的时候,不能进行访问。 可以采用代理服务器的方式,代理服务器:
浏览器向一个相同同源策略的代理服务器上请求资源,因为服务器之间没有同源策略,代理服务器就去找后端服务器请求资源,在返回给浏览器
解决方法一:
在根目录下新建vue.config.js文件,这里是js文件哈。
module.exports = {
lintOnSave:false, // 取消格式化
devServer:{
proxy:"http://houduanserver:5000" // 请求数据的地址
}
}
这个请求的时候,会先到public文件夹下查找资源,如果有的话就返回public文件夹下资源,如果没有就请求代理服务器资源。 这种方法只能请求一种代理
解决方法二:
module.exports = {
lintOnSave:false, // 取消格式化
devServer:{
open:true, // 当启动时自动打开浏览器
proxy:{
// 匹配以所有/api开头的请求路径,名字随意
'/api':{
target:"http://houduanserver:5000",// 请求服务器地址
ws:true, // 用于支持websocket 默认true
changeOrigin:true , // 默认true
// 设置为true时,后端服务器收到的是host名为:houduanserver:5000
// 设置为true时,后端服务器收到的是host名为:houduanserver:8080
pathRewrite:{ '^/api':“” },
// 当后端服务器中没有以/api开头的路径时,以空字符代替
},
'/api2':{
target:"http://houduanserver:5001",// 请求地址
ws:true, // 用于支持websocket 默认true
changeOrigin:true , // 默认true
// 设置为true时,后端服务器收到的是host名为:houduanserver:5000
// 设置为false时,后端服务器收到的是host名为:houduanserver:8080
pathRewrite:{'^/api2':' '},
// 当后端服务器中没有以/api开头的路径时,以空字符代替
}
}
}
}
api意思是只要以/api开头的就直接请求代理服务器再到后端服务器。不像方法一中那样,去请求public文件夹,在去请求代理到后端服务器。
pathRewrite是当浏览器通过请求/api/data到代理服务器,代理服务器再去请求后端服务器,然而后端服务器没有/api/data路径,只有/data路径,所以找不到/api只好为空
这种方法可以请求多种代理
在用axios请求资源时,一定要加上/api
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/192540.html原文链接:https://javaforall.cn
相关文章
- vue数组拼接[通俗易懂]
- python test suite_vue进度条插件
- vscode引入vue_vscode配置vue开发环境
- vuex的五大核心_vue如何实现跨域
- Vue笔记(10) vue-router
- vue axios跨域请求_vue跨域访问
- vue前端怎么解决跨域问题_前端跨域调用js方法解决方案
- vue解决跨域问题用后端配合吗_vue图片跨域解决
- vue相比jquery_angular和vue哪个厉害
- vue解决跨域的几种办法_前端跨域方法之cors
- vue跨域解决方案反向代理_怎么解决跨域问题
- vue跨域问题的三种解决方案_vue上线之后跨域问题
- vue解决跨域的几种办法_前端跨域解决方案
- fasdmin+uniapp网站解决跨域问题(vue网页+tp接口跨域)
- 【架构师(第三十篇)】Vue-Test-Utils 全局组件和第三方库 vuex | vue-router
- 【开发经验】SpringBoot与Vue-cli解决前后端交互跨域问题
- vue 路由 按需 keep-alive
- 浅谈Vue中的Prop详解编程语言
- 安装Vue on Linux:轻松搭建开发环境(linux安装vue)
- Vue 实现前后端分离,安全连接 MSSQL 数据库(vue 连接mssql)
- Vue实现Redis订阅消息的实现方案(vue 订阅redis)
- Vue中触发Redis订阅通知(vue中订阅redis)