vue项目打包后请求地址错误/打包后跨域操作


Posted in Javascript onNovember 04, 2020

vue项目 npm run dev时跨域请求正常,但是打包后请求地址就错误(请求地址不存在),请求不到数据。

vue项目打包后请求地址错误/打包后跨域操作

在vue项目中常用的是proxyTable代理跨域,这个用起来比较方便,但是当项目打包后就遇到这个问题了。

解决办法如下:

打开config文件夹下的index.js文件,添加以下代码

pathRewrite: {
 '^api':'https://*****.com' //填写需要跨域的地址
}

vue项目打包后请求地址错误/打包后跨域操作

2.配置开发环境地址,就是config文件夹下的dev.env.js文件,添加以下代码:

'use strict'
const merge = require('webpack-merge')
const prodEnv = require('./prod.env')

module.exports = merge(prodEnv, {
 NODE_ENV: '"development"',
 API_HOST:'"/api"' //配置代理路径的符号
})

3.配置生产环境地址,就是config文件夹下的prod.env.js文件,添加以下代码:

'use strict'
module.exports = {
 NODE_ENV: '"production"',
 API_HOST:'"https://**********.com/api"' //生产环境的地址
}
})

如果接口地址没有api这个公共路径就不要添上了。

4. 接下来就该在组件中使用了。

methods : {
  getData() {
  let _this = this;
  this.http(this,{
  //process.env.API_HOST 获取当前环境的api地址
   url : process.env.API_HOST+'/platform/index/new',
   // headersType : 1 //token
  }).then(res=>{
   this.ShowSkeleTon = true;
   this.list = res.list;
  },err=>{
   console.log(err);
  });
  },
 },

然后就是修改所有组件中的url地址了

虽然比较麻烦,但可以完美解决这个问题。这样即使打包后也可以请求到数据了。

补充知识:vue项目部署后跨域请求后端失败(已解决)

未解决前

vue项目打包后请求地址错误/打包后跨域操作

验证码加载失败

解决后

vue项目打包后请求地址错误/打包后跨域操作

验证码加载成功

解决办法

在 nginx/conf/nginx.conf 下做如下配置

server {
 listen 8080;  # 监听的端口号
 server_name 127.0.0.1; # 服务器的ip地址
 root /usr/local/nginx/html; # 服务器中项目所在文件夹
 #charset koi8-r;
 #access_log logs/host.access.log main;
 location / {
  # root /usr/local/nginx/html/;
  try_files $uri $uri/ /index.html;
  index index.html index.htm;
 }
 # 解决跨域请求
 location /req {
  rewrite ^.+req/?(.*)$ /$1 break;
  proxy_pass http://127.0.0.1; #第一个跨域请求的地址
  proxy_redirect off;
  proxy_set_header Host $host;
  proxy_set_header X-Real-IP $remote_addr;
  proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
 }
 # 解决跨域请求
 location /api {
  proxy_pass http://127.0.0.1:/login; # 第二个跨域请求的地址
  proxy_http_version 1.1;
  proxy_set_header Upgrade $http_upgrade;
  proxy_set_header Connection ‘upgrade';
  proxy_set_header Host $host;
  proxy_cache_bypass $http_upgrade;
 }
 }

注意:以上提供了两种解决方法,但是当两个都使用第二中方法时会出现问题。

以上这篇vue项目打包后请求地址错误/打包后跨域操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jquery向.ashx文件post中文乱码问题的解决方法
Mar 28 Javascript
基于jquery实现左右按钮点击的图片切换效果
Jan 27 Javascript
javascript事件委托的用法及其好处简析
Apr 04 Javascript
AngularJS过滤器filter用法实例分析
Nov 04 Javascript
Three.js中网格对象MESH的属性与方法详解
Sep 27 Javascript
在angular 6中使用 less 的实例代码
May 13 Javascript
详解Vue中使用Echarts的两种方式
Jul 03 Javascript
Vue 3.0 前瞻Vue Function API新特性体验
Aug 12 Javascript
JS数组push、unshift、pop、shift方法的实现与使用方法示例
Apr 29 Javascript
JSONObject与JSONArray使用方法解析
Sep 28 Javascript
在nuxt中使用路由重定向的实例
Nov 06 Javascript
js实现鼠标拖曳效果
Dec 30 Javascript
原生JavaScript实现贪吃蛇游戏
Nov 04 #Javascript
通过实例解析javascript Date对象属性及方法
Nov 04 #Javascript
解决vue项目打包上服务器显示404错误,本地没出错的问题
Nov 03 #Javascript
解决vant-UI库修改样式无效的问题
Nov 03 #Javascript
解决vant title-active-color与title-inactive-color不生效问题
Nov 03 #Javascript
如何在vue中使用百度地图添加自定义覆盖物(水波纹)
Nov 03 #Javascript
JavaScript语法约定和程序调试原理解析
Nov 03 #Javascript
You might like
动易数据转成dedecms的php程序
2007/04/07 PHP
php 使用post,get的一种简洁方式
2010/04/25 PHP
PHP基础知识介绍
2013/09/17 PHP
php统计时间和内存使用情况示例分享
2014/03/13 PHP
tp5框架使用composer实现日志记录功能示例
2019/01/10 PHP
IE、FF、Chrome浏览器中的JS差异介绍
2013/08/13 Javascript
jquery中focus()函数实现当对象获得焦点后自动把光标移到内容最后
2013/09/29 Javascript
js关于精确计算和数值格式化以及直接引js文件
2014/01/28 Javascript
JS输入用户名自动显示邮箱后缀列表的方法
2015/01/27 Javascript
javascript实现checkbox全选的代码
2015/04/30 Javascript
JQuery核心函数是什么及使用方法介绍
2016/05/03 Javascript
js中删除数组中的某一元素实例(无下标时)
2017/02/28 Javascript
js实现本地图片文件拖拽效果
2017/07/18 Javascript
jQuery实现新闻播报滚动及淡入淡出效果示例
2018/03/23 jQuery
详解ES6 Fetch API HTTP请求实用指南
2018/11/14 Javascript
js动态获取时间的方法分析
2019/08/02 Javascript
微信小程序弹窗禁止页面滚动的实现代码
2020/12/30 Javascript
python如何去除字符串中不想要的字符
2020/07/05 Python
对IPython交互模式下的退出方法详解
2019/02/16 Python
python定位xpath 节点位置的方法
2019/08/27 Python
python画微信表情符的实例代码
2019/10/09 Python
python中栈的原理及实现方法示例
2019/11/27 Python
使用Python制作缩放自如的圣诞老人(圣诞树)
2019/12/25 Python
keras中的backend.clip用法
2020/05/22 Python
Python 解决相对路径问题:"No such file or directory"
2020/06/05 Python
拉斯维加斯城市观光通行证:Las Vegas Pass
2019/05/21 全球购物
使用索引有什么好处
2016/07/27 面试题
留学自荐信
2013/10/10 职场文书
宠物店的创业计划书范文
2014/01/11 职场文书
幼儿园元旦亲子活动方案
2014/02/17 职场文书
民事和解协议书格式
2014/11/29 职场文书
成本会计岗位职责
2015/02/03 职场文书
写给老师的保证书
2015/05/09 职场文书
2015年党小组工作总结
2015/05/26 职场文书
MySQL创建管理HASH分区
2022/04/13 MySQL
redis protocol通信协议及使用详解
2022/07/15 Redis