V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
ylh1024
V2EX  ›  Node.js

求助,大家 node.js 是怎么代理的

  •  
  •   ylh1024 · 12 小时 59 分钟前 · 606 次点击

    开源项目每次下下来都要改代码去代理。配环境变量 https_proxy ,wsproxy ,clash 全局都没用。 都得改代码才能走代理。 特别是 ws 的 更麻烦,还走走 socks5 协议;

    6 条回复    2026-02-12 05:38:06 +08:00
    ylh1024
        1
    ylh1024  
    OP
       12 小时 55 分钟前
    补充一下,mac 和 window+wsl 环境里都遇到过这样的问题,系统代理,tun 都打开了
    Ketteiron
        2
    Ketteiron  
       11 小时 11 分钟前   ❤️ 1
    fetch/request 请求不会看环境变量,也不会被系统代理接管,只能写 agent 。tun 模式应该是有效的,我不知道你失效的原因是什么。

    最简单的方案是升级到新版 nodejs ,目前支持 NODE_USE_ENV_PROXY=1 开启,具体查看
    https://github.com/nodejs/node/issues/57872
    alansfinal
        3
    alansfinal  
       11 小时 4 分钟前
    tun 模式没起作用,沿着这个思路排查。开了 tun 不需要开系统代理。
    iamwin
        4
    iamwin  
       8 小时 25 分钟前
    nodejs 不是能正常走 https_proxy 和 http_proxy 的吗,我现在用 bun 好像也没遇到过依赖包下不下来的情况

    实在不行试试用这个接你的代理 https://github.com/tun2proxy/tun2proxy
    ntedshen
        5
    ntedshen  
       7 小时 52 分钟前
    全局代理最低要 24.5.0 ,24lts 也要更新才有
    要么等 26lts 或者 latest
    UnluckyNinja
        6
    UnluckyNinja  
       36 分钟前 via Android
    “Proxy settings are often provided via environment variables such as HTTP_PROXY, HTTPS_PROXY, and NO_PROXY. Node.js supports these when NODE_USE_ENV_PROXY or --use-env-proxy is enabled. This works with node:http and node:https (v22.21.0 or v24.5.0+) methods as well as fetch() (v22.21.0 or v24.0.0+).”
    官方文档,最低 22.21.0 。包管理器的代理是另一回事
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   897 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 22:14 · PVG 06:14 · LAX 14:14 · JFK 17:14
    ♥ Do have faith in what you're doing.