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

如何在浏览器中拦截库发起的EventSource请求并重定向至localhost:3005?

拦截并重定向EventSource请求

浏览器端代码拦截方案

直接重写原生EventSource构造函数,在依赖库发起请求前替换目标地址:

// 先保存原生的EventSource构造函数
const OriginalEventSource = window.EventSource;

// 重写构造函数实现拦截重定向
window.EventSource = function(url, options) {
  // 解析原请求地址并替换主机为localhost:3005
  const targetUrl = new URL(url);
  targetUrl.host = 'localhost:3005';
  
  // 调用原生方法创建连接,保留原参数
  return new OriginalEventSource(targetUrl.href, options);
};

使用说明:把这段代码放在依赖库加载之前执行,确保所有通过该库创建的EventSource请求都会被自动拦截重定向。

代理工具方案(无需修改代码)

如果不想改动前端代码,可以用代理工具实现请求转发:

  • 启动Charles、MitmProxy这类本地代理工具
  • 添加重写规则:匹配所有EventSource请求的域名/路径,将目标主机替换为localhost:3005
  • 配置浏览器使用该代理,所有相关请求会自动被转发到指定地址

注意事项

  • 重定向后的localhost:3005需要配置CORS规则,允许当前页面的域名跨域访问,否则会出现连接失败
  • 重写构造函数时务必保留原options参数,避免破坏依赖库的原有功能

内容的提问来源于stack exchange,提问作者voice

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.16 23:26:57