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 相关文章推荐
向大师们学习Javascript(视频与PPT)
Dec 27 Javascript
JS中Eval解析JSON字符串的一个小问题
Feb 21 Javascript
javascript实现粘贴qq截图功能(clipboardData)
May 29 Javascript
JSON 对象未定义错误的解决方法
Sep 29 Javascript
JS 调用微信扫一扫功能
Dec 22 Javascript
又一款MVVM组件 构建自己的Vue组件(2)
Mar 13 Javascript
node.js爬虫爬取拉勾网职位信息
Mar 14 Javascript
node.js-v6新版安装具体步骤(分享)
Sep 06 Javascript
微信小程序仿美团城市选择
Jun 06 Javascript
Vue的H5页面唤起支付宝支付功能
Apr 18 Javascript
vue 集成jTopo 处理方法
Aug 07 Javascript
vue实现防抖的实例代码
Jan 11 Vue.js
原生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
常用的php ADODB使用方法集锦
2008/03/25 PHP
Drupal简体中文语言包安装教程
2014/09/27 PHP
PHP pthreads v3下的Volatile简介与使用方法示例
2020/02/21 PHP
IE innerHTML,outerHTML所引起的问题
2009/06/04 Javascript
JS连接SQL数据库与ACCESS数据库的方法实例
2013/11/21 Javascript
JS获取几种URL地址的方法小结
2014/02/26 Javascript
node.js WEB开发中图片验证码的实现方法
2014/06/03 Javascript
node-http-proxy修改响应结果实例代码
2016/06/06 Javascript
JavaScript操作 url 中 search 部分方法函数
2016/06/15 Javascript
详解如何为你的angular app构建一个第三方库
2018/12/07 Javascript
小程序实现搜索框
2020/06/19 Javascript
vue+eslint+vscode配置教程
2019/08/09 Javascript
在vue-cli 3中给stylus、sass样式传入共享的全局变量
2019/08/12 Javascript
JS实现提示框跟随鼠标移动
2019/08/27 Javascript
vue中实现回车键登录功能
2020/02/19 Javascript
[46:38]完美世界DOTA2联赛PWL S2 Magma vs PXG 第三场 11.28
2020/12/02 DOTA
用实例说明python的*args和**kwargs用法
2013/11/01 Python
gearman的安装启动及python API使用实例
2014/07/08 Python
Python的Socket编程过程中实现UDP端口复用的实例分享
2016/03/19 Python
基于Django框架的权限组件rbac实例讲解
2019/08/31 Python
Python 利用OpenCV给照片换底色的示例代码
2020/08/03 Python
Python基于staticmethod装饰器标示静态方法
2020/10/17 Python
解决python 执行shell命令无法获取返回值的问题
2020/12/05 Python
python获取天气接口给指定微信好友发天气预报
2020/12/28 Python
美体小铺瑞典官方网站:The Body Shop瑞典
2018/01/27 全球购物
中学家长会邀请函
2014/01/17 职场文书
三个儿子教学反思
2014/02/03 职场文书
2014年幼儿园元旦活动方案
2014/02/13 职场文书
机械工程学院大学生求职信
2014/05/25 职场文书
一份关于丢失公司财物的检讨书
2014/09/19 职场文书
投资申请报告
2015/05/19 职场文书
堂吉诃德读书笔记
2015/06/30 职场文书
校园新闻稿范文
2015/07/18 职场文书
2016年4月份红领巾广播稿
2015/12/21 职场文书
Python基本的内置数据类型及使用方法
2022/04/13 Python
vue实现登陆页面开发实践
2022/05/30 Vue.js