欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

解决vue+webpack项目接口跨域出现的问题

程序员文章站 2022-06-17 10:42:39
1、config文件夹下index.js文件设置proxytable(proxytable后面的host可以设置也可以保持默认的localhost)proxytable: { '/api': { t...

1、config文件夹下index.js文件设置proxytable(proxytable后面的host可以设置也可以保持默认的localhost)

proxytable: {
 '/api': {
  target: 'http://10.xx.xx.xx:8080/renter-server', // 开发环境
  // target: 'http://10.xx.xx.xx:8080/renter-server', // 生产环境接口
  changeorigin: true,
  pathrewrite: {
   '^/api': '/'
  }
 }
},
host: '自己的ip或者默认的localhost', // can be overwritten by process.env.host

在使用axios请求的时候把所有接口的'http://10.xx.xx.xx:8080/renter-server'部分替换为'/api'

例如我们项目里axios的配置文件夹(自定义的)api下面的index.js文件里有如下配置

let env = process.env.node_env
let base_1, base_2
if (env === 'production') {// 生产环境 正式打包使用
 base_1 = base_2 = config.apihost
} else if (env === 'development') {// 开发环境 本地测试使用
 base_1 = base_2 = '/api'
}

再用base1拼接进行请求

axios.get(base_1 + '/pc/gethouselist', {params: params})

补充知识:vue打包后404,webpack配置问题

首先声明这是基于vue2.x的

1.

解决vue+webpack项目接口跨域出现的问题

将其中build的配置项assetspublicpath进行修改,改为上图--》目的是将资源文件的引入路径,改为相对地址(相对index.html)

2.html中的js、css、img引入均没有问题,

但是css中的background-image还是报404

此时的问题原因是,使用了相对地址后,在css进行引入的图片路径,其相对的是css文件的路径

此时的修改方法是,修改build文件夹中的utils.js文件,增加一行代码搞定

解决vue+webpack项目接口跨域出现的问题

以上这篇解决vue+webpack项目接口跨域出现的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。