vue-cli 3.0之跨域请求代理配置及axios路径配置

vue.cli项目封装全局axios,封装请求,封装公共的api和调用请求的全过程 vue项目的前期配置 封装axios实例 封装API 阅读详情

问题描述:

前后端分离的项目,前段node+vue。在请求服务端某接口时,需要带cookie,于是设置:

axiosck.defaults.withCredentials = true。

导致调用后台接口时,后台接口数据正常返回,但是前段识别为跨域,拿不到返回数据。报错如下:

Failed to load http://192.168.0.222/downLoad/DownLoadCheck?fileIds=855: Response to 
preflight request doesn't pass access control check: The value of the 'Access-Control-
Allow-Origin' header in the response must not be the wildcard '*' when the request's 
credentials mode is 'include'. Origin 'http://192.168.0.222:9527' is therefore not allowed 
access. The credentials mode of requests initiated by the XMLHttpRequest is controlled by 
the withCredentials attribute.

解决方法一:需要后台配置Origin来配合。不灵活,这里不推荐。

解决方法二:配置代理(推荐)

vue.config.js:

module.exports = {
  runtimeCompiler: true,
  publicPath: '/', // 设置打包文件相对路径
  devServer: {
    // open: process.platform === 'darwin',
    // host: 'localhost',
    port: 8071,
    // open: true, //配置自动启动浏览器
    proxy: {
      '/proxyApi': {
        target: 'http://192.168.0.222:10002/', // 对应自己的接口
        changeOrigin: true,
        ws: true,
        pathRewrite: {
          '^/proxyApi': ''
        }
      }
    }
   },
}

解释:proxy:代理配置。

             /proxyApi:自己定义一个代理名称,将来调用接口时使用此字符串代替target中的值

             target: 目标代理接口地址,一版写到域名/IP+port即可。(我这里端口本来是80,为了演示代码暂时写为10002)

             pathRewrite:是指定是否将 /proxyApi替换,并指定为替换的值。这里是替换为空。

 

请求方式:

axios.post('/proxyApi/downLoad/DownLoadCheck?fileIds=855', {
    fileIds: 855,
    fileType:1
}).then((res) => {
  console.log(res)
})

此时,虽然请求发送到了:http://localhost:8080/proxyApi/downLoad/DownLoadCheck?fileIds=855,控制台显示请求的地址为:http://localhost:8080/proxyApi/downLoad/DownLoadCheck?fileIds=855。但是已经代理到了地址:http://192.168.0.222:10002/downLoad/DownLoadCheck?fileIds=855。亲测可用。

完善:通过配置将请求地址配置到.env文件中实现不同环境中的动态加载。实现不修改代码切换环境。

可改写为:

module.exports = {
  runtimeCompiler: true,
  publicPath: '/', // 设置打包文件相对路径
  devServer: {
    // open: process.platform === 'darwin',
    // host: 'localhost',
    port: 8071,
    // open: true, //配置自动启动浏览器
    proxy: {
      '/proxyApi': {
        target: process.env.VUE_APP_ERMS_API, // 对应自己的接口
        changeOrigin: true,
        ws: true,
        pathRewrite: {
          '^/proxyApi': ''
        }
      }
    }
   },
}

 

.env文件配置方法参照一下链接。

https://blog.youkuaiyun.com/CaptainJava/article/details/103861623

 

 

vue2.x(vue-cli2.x)配置跨域请求代理,设置请求头 1、在config/index.js设置配置文件,跨域配置代理 (默认里面内容为空,我们需要加入对跨域接口的配置) 根据接口的不同设置的请求头和主机也不同,自己按照格式要求进行配置即可。 如上图配置好了之后,'/apis/getSongLyric'为自定义的axios请求路径,自己根据相应接口功能来命名。后面在用axios请求接口的时候,url路径就要写自定义的这个,那么代理就会自动解析成对应的请... 阅读详情

相关推荐

Minio HTTPS证书配置实战:从申请到部署全流程

本文详细介绍了Minio HTTPS证书配置的全流程,从申请到部署,确保对象存储服务的安全性。内容包括证书类型选择、文件处理、服务配置调整及常见问题解决,帮助用户在生产环境中快速实现HTTPS加密传输,提升数据安全。

weixin_42638178的博客 431

【浏览器】开发环境跨域请求

1. 在vue.config.js 中配置代理 // 配置 webpack-dev-server 行为。 devServer: { // open: process.platform === 'darwin', open: process.env.NODE_ENV === "development", host: '0.0.0.0', // 注意这个跟localhost port: 8080, https: fa

jieweiwuwei的博客 379

阿里云百炼平台创建智能体-上传文档

阿里云百炼智能体-上传文档文件

weixin_43930851的博客 1356

vue中解决跨域问题

vue中解决跨域问题 在vue.config.js加入以下代码 module.exports = { assetsDir: 'static', parallel: false, publicPath: './', devServer: { // open: process.platform === 'darwin', // 默认打开的浏览器 port: 8082, // 端

记录学习的一些知识,也希望这些记录总结能帮到需要的人! 422

脑电时频分析I:谱分析

1、EEG频带划分 自发的EEG活动在活体大脑中持续存在,通常通过频率进行分类(也叫神经振荡活动) 特定频段的脑活动,即节律性的活动,具有特定的头皮分布和生物学意义 最后还有一个γ波,主要是指30hz~100hz的一个波段,通常这个波段也包含了噪声唁电的成分,比较难提取处理,比较少用到这个波段 这个波段主要是有可能躯体感觉皮层,进行一个多通道的感觉输入的i信号处理,比如我们同时处理视觉和听觉信号的处理,而且γ波与我们记忆的形成有关 除此之外,还有一个特殊的波段,8~12hz的Mu波段主要是特指我们

Kobe123brant的博客 1万+

Anthropic发布10款金融AI智能体模板深度解析:重构华尔街工作范式

摘要:2026年5月,Anthropic发布10款金融AI智能体模板,标志着AI从辅助工具升级为"虚拟同事"。这些智能体深度集成到Word、Excel等办公软件中,覆盖投行、商行、资管三大场景的核心工作流,预计可提升效率35-85%。技术架构基于Claude3.5Sonnet模型,具备200K上下文窗口和95%+的财务图表解析准确率,并与彭博等金融数据源直连。发布引发传统金融数据服务商股价下跌,摩根大通等机构则视其为成本优化工具。落地需分四阶段推进,关键在于数据治理和复合型人才培养。未来

yyq916的博客 635

electron - 无边框、最大化、最小化、等比缩放问题

环境 electron@13.1.1,请尽量用最新的修订版本或最新的大版本,否则会有 bug!!! 一. 无边框模式 1. 使用 官方文档:无边框窗口 要创建无边框窗口,只需在 BrowserWindow 的 options 中将 frame 设置为 false const win = new BrowserWindow({ width: 800, height: 600, frame: false }) 2. 拖拽区 在无边框模式下,如果没有一拖拽控制区的话,你的应用启动后就一直在屏幕那个位置,无法被移

wanzheng_96的博客 1万+

无人驾驶-2024-09-智能驾驶与机器视觉09:视觉与多传感器融合

从本章开始,我们将详细介绍视觉与多传感器融合技术。自动驾驶中常用的传感器都有其优势和局限性,单一传感器无法应对复杂的驾驶场景。多传感器融合技术旨在综合利用不同的传感器优势,提升感知的精度和鲁棒性。本章首先介绍多传感器融合的相关概念,之后详细介绍典型的融合方法。

u013250861的博客 593

electron 主进程与渲染进程通讯

Electron 基本应用

嘿嘿 3370

手把手教你配置UEFI Secure Boot:从密钥生成到系统验证(附避坑指南)

本文详细介绍了如何配置UEFI Secure Boot,从密钥生成到系统验证的全过程,包括PK、KEK等关键密钥的生成方法,以及常见问题的解决方案。通过实战案例和避坑指南,帮助用户有效提升系统启动安全性,防止恶意软件植入。

weixin_30776273的博客 340

代谢组数据分析(二十一):通过MetaboAnalystR标准化构建sPLSDA预测模型

本文介绍了如何使用R语言中的MetaboAnalystR包和mixOmics包进行代谢组学数据的标准化和sPLSDA分析。MetaboAnalystR包用于数据预处理,包括数据初始化、清洗、补足、过滤和标准化等步骤,以确保数据质量。mixOmics包则用于sPLSDA分析,通过Lasso惩罚进行变量选择,并建立分类模型。文章详细说明了安装和加载相关R包的步骤,并提供了数据导入和预处理的代码示例。最后,强调了数据预处理的重要性,以确保后续分析的准确性和可靠性。

专注生信领域 2426

process.platform 作用

可以获取当前运行 Node.js 进程的操作系统平台的信息。

weixin_64684095的博客 1021

一.镜头知识之焦点,焦距,有效焦距,前焦距,后焦距

由光学系统中镜片的最后一面到像面的距离。

AIoT深度探索者 | 嵌入式系统架构师 深耕物联网(IoT)与人工智能(AI)融合技术,聚焦​​边缘计算、图像开发、低功耗通信协议​​,致力于智能硬件,关注我获取最新技术文章信息与海量资源~ 5578

Vue-cli 3.0 中如何配置axios跨域多个代理?

Vue-cli 3.0 中如何配置axios跨域多个代理? 1、vue.config.js devServer: { open: true, port: 8081, proxy: { //匹配/dev-api开头的请求 [process.env.VUE_APP_BASE_API]: { //目标服务器,代理访问到https://localhost:8080 target: process.env.VU

欢迎来到Tong_YuTian的博客 2498

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

vue-cli3.0 配置请求跨域nginx代理转发 微信 {“errcode“:40066,“errmsg“:“invalid url hint: [FZbxRA0556sz12!]“}错误

1.vue-cli3.0项目 新建一个vue.config.vue文件中配置代理路径 devServer: { // port: 3000, // 端口号 // 允许外网访问 //disableHostCheck: true, proxy: { '/wxapi': { //这里最好有一个 / ...

LGDmar的博客 1120

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

VUE3.0,DAY56,vue的配置代理服务器,axios发送请求

VUE3.0,DAY56axios axios 使用node.js写两个后台服务器,并运行,里边保存着不同的内容。使用axios发送ajax请求,axios是对js内置的xhr方法进行的封装。在使用前需要在命令行引入axios。打开vs code 新终端选项,输入命令安装axios库。 npm i axios 在使用的时候,注意:协议、主机名、端口号要 ...

疯子的梦想@的博客 634

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

vue-cli3配置axios代理跨域(二)——配置步骤

关于代理跨域的原理,请查看:https://blog.csdn.net/qq_36485978/article/details/100016790 一、安装vue vue-cli3安装插件用add命令。 vue add axios 安装完之后会在src目录下自动生成一个plugins文件夹,在main.js中会自动引入axios,所以不需要再添加什么了。 二、配置代理跨域 ...

qq_36485978的博客 3131

解决 Vue 使用 Axios 进行跨域请求的方法详解

跨域请求是指浏览器从一个域向另一个域发送请求。这种请求会被浏览器的同源策略阻止,除非目标域明确允许跨域请求。不同的域名(例如从请求不同的端口(例如从请求不同的协议(例如从http请求https跨域请求问题是前后端分离开发中常见的问题,可以通过在后端配置 CORS、在开发环境中使用代理以及其他方法来解决。最优的解决方案是配置后端服务器以允许必要的跨域请求,从而保证应用的安全性和稳定性。希望本文能帮助你全面了解和解决 Vue 项目中使用 Axios 发起跨域请求时遇到的问题。

繁依Fanyi的博客 1万+

关于vue-cli3中配置请求跨域的问题

关于vue-cli3中配置请求跨域的问题 根据Vue CLI3官方文档, 需要在vue.config.js文件中配置devServer.proxy选项来解决跨域问题。 关于vue.config.js文件 此文件在vue-cli3中不会自动生成,需要手动在项目根目录下创建。 配置devServer.proxy选项 以豆瓣的电影接口为例,进行如下配置。 proxy中的/j/search_su...

Ep流苏的博客 2691

Vue-cli 请求代理配置,封装 Axios

Vue-cli 请求代理配置及封装 Axios 大佬止步,小白往下。 HTTP 请求代理配置 vue-cli 2.x // /config/index.js proxyTable: { '/api-1': { target: 'path1', changeOrigin: true, pathRewrite: { '^/api-1': '' // 以 /api-1 开头的请求路径都会被 'path1' 代理 } }, '/api-2': { ta

锋利的二丫 5557

vue-cli3.0创建项目,vue-cli3.0各项配置与安装, vue-cli3.0 上手教程 (一)

目录 1. 安装 vue-cli3.0 ,可以使用下列任一命令安装这个新的包: 2.打开终端,创建一个项目 3. 配置 自己选择 4. 项目构建完成 启动项目 4.1启动成功 4.2运行报错 无报错 忽略 5.安装axios 6. 配置 vue.config.js 6.1全局 CLI 配置 文档 6.2配置跨域代理 vue-cli 3.0 官网教程 vue-...

csl125的博客 6669

教你如何解决vue跨域问题(vue cli3)

1.什么是跨域请求 简单来说就是浏览器中当前网站向另一个网站发送请求获取数据的过程,这就是跨域请求。 2.哪些是跨域请求 1.http://www.test.com/index.html请求http://www.test.com/login(不跨域) 1.域名不同:http://www.test.com/index.html请求http://www.test1.com/login(跨域) 2.端口不同:http://www.test.com:80/index.html请求http://www.test

Tz.的博客 5139

vue-cli 3.0 axios 跨域请求代理配置及生产环境 baseUrl 配置

1. 开发环境跨域配置 在 vue.config.js 文件中: module.exports = { runtimeCompiler: true, publicPath: '/', // 设置打包文件相对路径 devServer: { // open: process.platform === 'darwin', // host: 'localhost', p...

weixin_33862993的博客 3091
上一篇: linux、centos通过端口号或者程名查看进程所在目录等详细信息
下一篇: node+vue之动态加载配置文件
grootblockchain
博客等级 码龄11年 55粉丝 101原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值