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

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

  •  
  •   ylh1024 · 14 小时 47 分钟前 · 641 次点击

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

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

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

    实在不行试试用这个接你的代理 https://github.com/tun2proxy/tun2proxy
    ntedshen
        5
    ntedshen  
       9 小时 40 分钟前
    全局代理最低要 24.5.0 ,24lts 也要更新才有
    要么等 26lts 或者 latest
    UnluckyNinja
        6
    UnluckyNinja  
       2 小时 24 分钟前 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   ·   1420 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 00:02 · PVG 08:02 · LAX 16:02 · JFK 19:02
    ♥ Do have faith in what you're doing.