vue项目开发,用webpack配置解决跨域问题

今天在本地开发时候碰到了跨域的问题,突然觉着跨域问题在所难免啊,之前没有没有碰到总觉着解决跨域很高大上的样纸,其实就是受限于网络的同源策略,跨域前后端都可以进行处理。

1,后端更改header

header('Access-Control-Allow-Origin:*');//允许所有来源访问 
header('Access-Control-Allow-Method:POST,GET');//允许访问的方式 

2,使用jsonp进行跨域

getData () { 
    var self = this 
    $.ajax({ 
      url: 'http://f.apiplus.cn/bj11x5.json', 
      type: 'GET', 
      dataType: 'JSONP', 
      success: function (res) { 
        self.data = res.data.slice(0, 3) 
        self.opencode = res.data[0].opencode.split(',') 
      } 
    }) 
  } 

3,使用webpack反向代理(项目中使用vue-cli脚手架搭建)

1,在config/index.js中的proxyTable添加如下代码:

proxyTable: {
      '/gp': {
        target: 'http://10.0.67.65/uat_branch/IspWeb/',
        changeOrigin: true,
        pathRewrite: {
          '^/gp': ''
        }
      }
    },

在公共的apiConfig中加入跨域的环境:

case 5:
      //跨域环境
      apiObj.baseUrl = '/gp/';
      apiObj.File_upload_URL = '';
      break

至此所有的请求接口类似:http://localhost:8080/gp/api/v1.0/user/login

 尝试请求后发现该接口地址404,后发现:代理设置完成后需要重新 npm run dev

 

  

posted @ 2018-05-28 18:57  tangjiao_Miya  阅读(2342)  评论(0编辑  收藏  举报