React - ajax 配置代理

  1. React 本身只关注于界面,并不包含发送 ajax 请求的代码;
  2. 前端应用需要通过 ajax 请求与后台进行交互(json 数据);
  3. React 应用中需要集成第三方 ajax 库(或者自己封装)。

方法一

在 package.json 中追加如下配置:

javascript 复制代码
"proxy":"http://localhost:5000" // 5000端口号

说明:

  1. 优点:配置简单,前端请求资源时可以不加任何前缀;
  2. 缺点:不能配置多个代理;
  3. 工作方式:上述方式配置代理,当请求了3000不存在的资源时,那么该请求会转发给5000(优先匹配前端资源,就近原则)。

方法二

第一步:创建代理配置文件

在src下创建配置文件:src/setupProxy.js

第二步:编写 setupProxy.js 配置具体代理规则

javascript 复制代码
const proxy = require('http-proxy-middleware')

module.exports = function (app) {
    app.use(
        proxy('/api', { // 遇见 /api 前缀的请求,就会触发该代理配置
            // 请求转发给谁
            target: 'http://localhost:5000',
            changeOrigin: true, // 控制服务器收到的请求头中的Host的值
            pathRewrite:{'^/api':''} // 重写请求路径(必须) 将/api换成''
        }),
        proxy('/api1', {
            target: 'http://localhost:5001',
            changeOrigin: true,
            pathRewrite:{'^/api1':''}
        }),
    )
}

说明:

  1. 优点:可以配置多个代理,可以灵活的控制请求是否走代理。
  2. 缺点:配置繁琐,前端请求资源时必须加前缀。
相关推荐
Autumn_ing7 小时前
Design.md生成UI怎么验收?举例运营后台的颜色、状态和数据核对
前端·ui·ai·设计系统·paico·ai生成ui·design.md
keyipatience8 小时前
JavaScript学习(1)书写位置,变量、数据类型、运算符
开发语言·前端·javascript·css·学习
朱涛的自习室8 小时前
我给 Gemini 4 和 DeepSeek 搞了套「末位淘汰」,AI 干活会更猛吗?(Day 3)
android·前端·后端
java1234_小锋10 小时前
【技术专题】HTML5 网页技术 - HTML5简介 & HTML5 文档结构
前端·html·html5
鶴哥只手遮天11 小时前
Vue 3 核心源码深度剖析系列(v3.5.44)-第 1 章 项目全景:monorepo 架构与工程化体系
前端·vue.js·开源
流星。。方11 小时前
小团队官网SEO落地:前端语义化与静态生成的工程实践
前端·状态模式
小天源11 小时前
智叟云集系统架构解析:从品牌 AI 可见度监测到前后端协同
人工智能·react.js·系统架构·node.js·react·ai监测·ai品牌监测
用户5304297657911 小时前
盘点危化品搬运诊断的6类工具与自处理边界判断
前端
curtain11 小时前
从古法编程到 Agent:我入行这两年,AI 改变了什么
前端·openai
zyfts11 小时前
10分钟自制Codex钉钉通知Skill:AI干完活自动钉钉提醒你
前端