You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

http-proxy-middleware配置代理后请求路径未被转发如何解决

问题根因

路径未追加的核心原因是 createProxyMiddleware 的路径匹配规则和 Express 的 app.use 挂载逻辑不兼容:你当前将匹配路径 /post 作为 createProxyMiddleware 的第一个入参传入,触发了代理的路径截断逻辑,导致匹配到的路径没有被自动追加到目标地址末尾。

解决方案

两种修改方式都可以解决问题,任选其一即可:

  1. 将匹配路径移到 app.use 的第一个参数,createProxyMiddleware 仅传入配置对象:
const { createProxyMiddleware } = require('http-proxy-middleware');

module.exports = function (app) {
    app.use(
        "/post",
        createProxyMiddleware({
            target: 'https://postman-echo.com',
            changeOrigin: true,
            logLevel: 'debug'
        })
    );
};
  1. 保持原有写法,显式声明 prependPath: true 配置项(部分版本的代理库该参数默认值存在异常,显式声明可以规避问题):
const { createProxyMiddleware } = require('http-proxy-middleware');

module.exports = function (app) {
    app.use(
        createProxyMiddleware("/post", {
            target: 'https://postman-echo.com',
            changeOrigin: true,
            logLevel: 'debug',
            prependPath: true
        })
    );
};

修改完成后重启 React 开发服务,代理日志会正常输出预期的路径转发记录,POST 请求也会和 CURL 命令执行结果一致返回正确响应。


内容的提问来源于stack exchange,提问作者Jack N.

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 14:00:01