vue-cli4.x配置Proxy代理解决跨域

Vue使用代理方式解决跨域问题 如果 Vue 前端应用请求后端 API 服务器,出现跨域问题(CORS),这个问题可以通过 vue.config.js 中的 devServer.proxy 选项来配置。通过使用代理方式解决跨域问题。vue.config.js 是一个可选的配置文件,如果项目的 (和 package.json 同级的) 根目录中存在这个文件,那么它会被 @vue/cli-service 自动加载。你也可以使用 package.json 中的 vue 字段,但是注意这种写法需要你严格遵照 JSON 的格式来写。 阅读详情

​ 我们在之前说了前端常见的跨域方式,其中说了proxy代理解决此问题

​ 它的思想思想实际上是通过访问a接口代理b接口的请求,因此我们最终访问的是b接口。使用这种方式的好处是我们可以使用任何方式请求数据都可以。并且前后端都不需要做处理,只需要运维改一些配置信息。

​ 我们这里vue项目使用的是nodejs服务器,因此我们要在vue.config.js中配置,最终传入webpack模块在给node服务器。

​ 下面是我们的vue.confg.js的信息:


module.exports={
  devServer:{
    host:'localhost',
    port:8080,
    proxy:{
      '/api':{
        target:'http://127.0.0.1:3000',
        changeOrigin:true,
        pathRewrite:{
          '/api':''
        }
      }
    }
  }
}

主要是在proxy中处理一些操作。/api实际上是一层拦截,当我们前端访问到这个路由时,会自动代理到我们taregt中的内容,然后将

changeOrigin改为true,这句话的意思时是否将主机头的原点更改为目标的请求头。pathRewrite是将api路由地址更改为某一个值,我们这里给空。

​ 我们这里的服务器使用的是nodejs,且端口为3000,我们web项目服务器端口为8080,因此这里web端访问服务器时就会跨域。

我们这里使用axios请求数据:

axios({
  url:'/api/data'
}).then((result) => {
  console.log(result);
})

可以直接看一下结果:
在这里插入图片描述

​ 首先我们发现这里时请求成功的,解决了跨域,接着我们再看一下Request URL中的内容,我们发现这里的主机名以及端口都是我们web服务器的。就好像这个接口时我们同源下的接口。内部再通过nodejs转发服务器的服务。

​ 所以我们的proxy时设置成功的。

Vue CLI 4.x 开发环境跨域配置:3步配置 proxyTable 解决 Axios 请求 403 本文详细介绍了Vue CLI 4.x开发环境中如何通过3步配置proxyTable解决Axios请求403跨域问题。从理解跨域本质到实战配置,涵盖代理原理、Axios基础URL设置及高级疑难解答,帮助开发者高效解决前后端分离开发中的跨域限制。 阅读详情

相关推荐

VueCli4项目配置反向代理proxy的方法步骤

Vue Cli4创建项目之后,没有配置vue.config.js,如果直接发起axios请求,可能会引起跨域问题. 以豆瓣电影首页的最近热门 为例: axios({ method: "get", url: "https://movie.douban.com/j/search_subjects", params: { type: "movie", tag: "热门", page_limit: 50, page_start: 0 } }).then(res => { console.log(res.data); }); 如果直接发起请求必然会引起跨域错

Vue CLI4.0 webpack配置属性——devServer.proxy

前言 在《Vue CLI4.0 webpack配置属性——devServer》中,我初略提及了 devServer.proxy 。但是并没有做详细的讲解。一、是因为,面对跨域问题,我常用的做法是让后端做处理;第二个原因呢?其实我并没有真正的设置成功过。所以我不敢写,怕误导大家。 关于后端如何处理跨域问题,可查看:《koa2 + VueCLI 4.0 + axios 跨域问题》 devServer.proxy devServer.proxy Type: object [object, function

Jay的博客 4084

python制作图形化小游戏_创意编程|Python的GUI简易界面设计测测你的反应力

Python的GUI简易界面设计案例测测你的反应力作为初次接触代码编程的你,是不是觉得Python程序除了“码”就是“字”即使是有趣的程序除了烧烧自己的脑,也吸引不到更多人的兴趣,用户体验值接近于0?那你可冤枉了Python,他可是人工智能界的编程语言大咖。今天这个游戏设计就先带领大家,简单体验一下,如何让Python程序图形化。一起来吧!设计我们的小游戏游戏设计思路:电脑随机出...

weixin_34214135的博客 1872

vue框架在vue-cli3下使用proxy处理前端跨域解决方案

什么是跨域 跨域问题的出现是因为浏览器的同源策略问题,所谓同源:就是两个页面具有相同的协议(protocol),主机(host)和端口号(port),它是浏览器最核心也是最基本的功能,如果没有同源策略我们的浏览器将会十分的不安全,随时都可能受到攻击。 跨域的表现 打开浏览器控制台(F12),当我们请求一个接口的时候,出现如:Access-Control-Allow-Origin 字眼的时候说明请求跨域了。 具体报错信息为No ‘Access-Control-Allow-Origin’ header is .

wangyinze123的博客 1481

Unity海洋渲染实战:Ceto Ocean System核心原理与高级应用指南

实时水面渲染是计算机图形学中的重要课题,涉及波浪模拟、光照交互和着色器编程等核心技术。其原理通常基于物理模型,如使用Gerstner波模拟规则海浪,或通过快速傅里叶变换(FFT)处理频谱数据生成随机海面。这些技术的价值在于能以可控的性能开销,在游戏中实现具有体积感、反射和折射效果的真实水体。在开放世界、海战模拟等应用场景中,专业的海洋系统如Ceto Ocean System,通过模块化架构整合了波浪生成、动态网格和渲染管线,为开发者提供了完整的解决方案。本文深入探讨了其双引擎波浪系统和多层渲染结构,并分享了

weixin_29002595的博客 280

APB Timer验证环境搭建——学习笔记(1)

以下为个人学习笔记,如有疏漏,请大家指正补充~~APB Timer是一个简单的下行计数器,包括一个32位计数器和一组比较器,可以实现多种计时功能。包括生成一次性中断或者定时中断。

qq_41651535的博客 1578

vue.config.js中proxy配置

aybaiwan的博客 421

警惕AI依赖:如何避免数字水蛭侵蚀你的认知能力

在人工智能技术日益普及的今天,人机协作已成为现代工作流的核心范式。其原理在于通过算法模型辅助人类完成信息处理、内容生成等任务,从而提升效率。然而,过度依赖AI可能导致认知卸载,引发思考能力退化等潜在风险。从技术价值看,AI的核心在于增强而非替代人类智能,关键在于建立健康的协作模式。在应用场景上,无论是编程开发、内容创作还是决策分析,用户都需警惕工具依赖对深度工作、创造性思维和决策责任的侵蚀。本文聚焦于识别AI依赖的早期信号,并提供构建分阶段使用流程、将AI作为质疑者等具体策略,旨在帮助读者守护核心认知能力,

weixin_30240349的博客 625

VUE跨域代理配置

VUE跨域代理配置为什么会出现跨域VUE设置跨域(其他的情况未写) 为什么会出现跨域 浏览器访问非同源的网址时,会被限制访问,出现跨域。 不同源:协议,域名,端口号三者之一不同。 VUE设置跨域(其他的情况未写) 在vue.config.js文件中配置: devServer: { host: 'localhost', port:8080,//端口号 proxy: { '/api': { //拦截包含 /api 的接口 target: 'http://xxxxx:9093', //设置调用的

qq_38844623的博客 298

【测开求职】面试题:计算机网络 详细版整理

本篇文章是笔者为准备研究生复试和校招而写,因此主要针对问答,注重理解,而不在于细节计算。读者可以先查看上面的链接走一遍计算机网络的整体框架结构。其中,重点难点以及易混淆的知识点,笔者会用其他文章进行了详述,在知识点处贴好了链接,有需要的可以查阅。

vector的博客 5936

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

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

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

vue-cli 4.x + axios跨域解决方案

前后端分离的项目中,前端为了提高开发效率往往会自己开一个小型的服务器,比如 webpack.devServer ,这样在前端调用后端接口的时候必然会面对跨域问题。 之前在做 vue+node.js 前后端分离项目的时候,遇到 axios 不支持跨域的问题,网上找了很多资料,但很少有将 vue-cli4.x 版本的,当时看的是这位大佬的博文 指路:Vue-cli 3.x + axios 跨域方案...

mrany_cxm的博客 2369

基于YOLOv8深度学习架构的智能农业巡检小车系统—面向农作物与杂草实时精准识别的创新实践

本研究设计并实现了一套基于YOLOv8的智能农业巡检小车系统,解决农田中农作物与杂草的精准识别与追踪问题。系统采用改进YOLOv8-RGCSPELAN-ECA-AFPN模型,融合ECA注意力机制与AFPN多尺度特征融合结构,提升复杂环境下的检测精度。硬件以树莓派4B为核心,集成摄像头、传感器与电机模块,具备避障、循迹与自主导航功能。移动端基于Android部署NCNN推理引擎,实现模型高效移植与实时检测。

Stara-AI的博客 1425

Vue中使用proxy配置代理解决跨域的问题

1: 需求说明 在前后端分离开发中, 前端发送 ajax 请求, 因为受到了浏览器同源策略的限制, 会出现跨域问题, Vue项目中, 使用代理请求解决跨域问题 使用vue/cli 4.x 以上版本创建的 Vue项目, 在项目的根目录中创建 vue.config.js 配置文件 2: 代码实现 在 Vue 项目根目录创建 vue.config.js 配置文件, 配置代码如下 module.exports = { devServe: { proxy: {

weixin_55696461的博客 543

Unity 热更 之 【YooAsset 热更】几分钟快速了解 YooAsset [功能面板]、以及 [基础代码] 说明

Unity 的资源管理系统不断发展,以适应不同项目的需求和解决特定的问题。AssetBundle 和 Addressable Asset System 是 Unity 官方提供的资源管理解决方案,而 YooAsset 是第三方提供的资源管理系统。简化的API和易用性YooAsset 可能提供了更简单直观的 API,使得资源加载和管理更加容易。对于不熟悉 Addressable 或 AssetBundle 复杂配置的开发者来说,YooAsset 可能是一个更易于上手的选择。性能优化。

仙魁XAN 2956

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

vue cli+axios踩坑记录+拦截器使用,代理跨域proxy(更新)

1、首先axios不支持vue.use()方式声明使用,看了所有近乎相同的axios文档都没有提到这一点 建议方式在main.js中如下声明使用 import axios from 'axios'; Vue.prototype.$axios=axios; 那么在其他vue组件中就可以this.$axios调用使用2.小小的提一下vue脚手架前端调后端数据接口时候的跨域问题,在webpack配置一下

BeterJane 11万+

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

Vue.js CLI4 Vue.config.js标准配置 (最全注释)

前言: Vue.js CLI工具 不知不觉发展到了4.0时代,CLI给人最直白的感受是没有了build文件夹跟config文件夹,所有的配置都在Vue.config.js完成。那么该文件的配置至关重要。现在我们来看一下最新配置是怎么配置的。 // vue.config.js const path = require('path'); const CompressionWebpackPlugin ...

主要领域:前端开发 7万+

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

在vue中 如何实现跨域

跨域问题是Web开发中常见的挑战,那么如何解决跨域呢,我们一起来看看吧!

Sherry Tian的博客 3013

关于脚手架vue/cli4.x的使用

官方文档 https://cli.vuejs.org/zh/guide/installation.html 1.安装 官方文档上有说明,在安装最新的脚手架之前最好先卸载旧版本的vue/cli。 npm uninstall vue-cli -g 同时也需要保持node 的版本8.9 或更高版本 (推荐 8.11.0+),如果你的电脑上还没有安装与此版本相匹配的Node版本,建议先安装。 那么现在...

一条会流泪的鱼 3120

vue-cli3配置proxy解决前后端域名/端口不一致引起的跨域问题

错误代码 前端 import axios from 'axios' import VueAxios from 'vue-axios' Vue.use(VueAxios, axios) this.axios.post('http://localhost:8082/account/signup', this.formValidate) 后端 @RestController @Reques...

qq_22339269的博客 4739

[vue] vue cli 4.0+ 解决前端跨域问题

文档链接:axios、vue-cli、开源社区api 自己动手测试:(黑窗) 1.1 vue create ‘项目名称’ 1.2 vue serve ‘xxx.vue’ 1.3 完整的接口链接为:http://meiriyikan.cn/api/json.php 一、request.js(去 axios中看) 请注意这句话:const baseURL = '/api':这话是使用 /api 代替 vue.config.js中配置的 proxy target要访问的跨域的接口域名。比如你写成 const.

qq_34450741的博客 3386

springboot2.X整合vue4解决跨域问题

前后分离项目中,有一个需要解决的问题就是跨域问题,我使用idea创建springboot2.X项目,使用webstorm创建的vue cli4.0,默认新建的vue cli4中并没有vue.config,js配置文件,可以在根目录下(非src文件夹下)新建该配置文件,在里面写跨域的配置。本次采用在后端springboot2.X中进行操作,vue cli不修改任何配置文件 如上图所示,首先新建...

qq_34309663的博客 564

vue-cli4.x创建的项目中解决跨域问题

如果你的前端应用和后端 需要跨域,你需要在开发环境下将 API 请求代理到 API 服务器。可以通过 *.config.js 中的 devServer.proxy 选项来配置。 devServer: { open: false, // 编译完成是否打开网页 host:'0.0.0.0', // 指定使用地址,默认localhost,0.0.0.0代表可以被外界访问 port: 8080, // 访问端口 https: false, // 编译失败时刷新页面

qq_41963899的博客 1045

vue项目使用vue.config.js解决跨域问题

当一个请求url的协议、域名、端口三者之间任意一个与当前页面url不同即为跨域当前页面url被请求页面url是否跨域原因否同源(协议、域名、端口号相同)是协议不同(http/https)是主域名不同(test/baidu)是子域名不同(www/blog)是端口号不同(8080/3008)

qq_43583887的博客 2639

Vue初始化 axios 拦截器 proxy 跨域代理

vue-cli 1. 什么是 vue-cli vue-cli(俗称:vue 脚手架)是 vue 官方提供的、快速生成 vue 工程化项目的工具。 特点: ① 开箱即用 ② 基于 webpack ③ 功能丰富且易于扩展 ④ 支持创建 vue2 和 vue3 的项目 vue-cli 的中文官网首页:https://cli.vuejs.org/zh/ 2. 安装 vue-cli vue-cli 是基于 Node.js 开发出来的工具,因此需要使用 npm 将它安装为全局可用的工具: 2.1 解决 Windows

kaieew12345的博客 1265
上一篇: Vuex的五个核心概念
下一篇: Storage的封装
小牲口online
博客等级 码龄8年 116粉丝 68原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值