vue 跨域问题*

vue 跨域问题

一般出现跨域问题,,就是url中的三部分 可能有不一样的,,域名 或者协议,或者端口不一样。因为浏览器的同源策略,所以如果两个路径url的协议、域名、端口都相同则表示再同一个域上,可以进行相互访问,也是确保浏览器安全的重要策略,如果没有同源策略:在一个域上程序不允许访问另一个域上文本 ,不然通过添加 javaScript 脚本就可以轻松获取到用户信息.

目前了解到的是:在vue.config.js中配置 proxy,进行代理跨域处理
proxy: {
//将来只要是路径以/music开头,就会被代理到target。
//比如说路径是/music/list/sfads···等等。
//会自动写成:target /list/sfads···,也就是https://xxxxxx/xxxx/fxxxxxcgi-bin/ list/sfads 相当于在地址中匹配到了/music ,就会用用空来替换/music,,然后再用target和后面进行一个拼接。(https://c.y.qq.com/mv/fcgi-bin//list/sfads,如果 pathRewrite: { “^/music”: “/musicmv” },那么新的地址中/music就会变为/musicmv,也就是https://c.y.qq.com/mv/fcgi-bin//musicmv/list/sfads)
//pathRewrite可以把music转成空的。pathRewrite: { “^/music”: “” },
或者可以把music转成其他www.baid/的pathRewrite: { “^/music”: “www.baidu/” },

        "/music": {
            target: "https://xxxxxx/xxxx/fxxxxxcgi-bin/",
            pathRewrite: { "^/music": "" },
        },
    },

一般在代码中请求数据 都是客户端到服务端
但是设置代理以后 就会从本地服务端 到服务端
例如项目中 后端的接口是https*****前端部署到http上以后,1页面请求不到数据,就是跨域访问了,所以应该在前端中进行配置代理,,也应该是target :”https****”,这样的话就是 https到https的访问了 就可以了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值