刚才给小伙伴搞一个留言板项目,前后端分离的,对方说要在宝塔上面部署,都知道的,宝塔一次只能同时绑定一个domain。这样的话,只能是api一个域名,前端一个域名。
在request里就设置了api的域名,请求的时候,报了跨域错误。
遂找解决的办法,其实可以通过设置proxy来解决跨域问题,在项目的根目录,找到vue.config.js,没有则可以创建一个,在module.exports={};里面添加以下代码
其实这个就是一个代理,浏览器表面上看是访问项目里的/apia其实,程序访问的是http://api.mydomain.com/apia
devServer: { proxy: { //配置代理 '/apia': { target: 'http://api.mydomain.com/apia', //实际上转发到的是这个地址 changOrigin: true, //允许跨域 pathRewrite: {//这个是重写 '^/apia': '' }, }, '/apib': { target: 'http://api.mydomain.com/apib', //实际上转发到的是这个地址 changOrigin: true, //允许跨域 pathRewrite: {//这个是重写 '^/apib': '' }, }, } }
微信扫码查看本文
发表评论