469fb5d27c
Extracted HTTP proxy setup to shared module and imported it from both stream.ts and oauth/index.ts. This ensures fetch() calls during OAuth flows (token exchange, refresh, project discovery) go through the proxy. fixes #1132
14 lines
514 B
TypeScript
14 lines
514 B
TypeScript
/**
|
|
* Set up HTTP proxy according to env variables for `fetch` based SDKs in Node.js.
|
|
* Bun has builtin support for this.
|
|
*
|
|
* This module should be imported early by any code that needs proxy support for fetch().
|
|
* ES modules are cached, so importing multiple times is safe - setup only runs once.
|
|
*/
|
|
if (typeof process !== "undefined" && process.versions?.node) {
|
|
import("undici").then((m) => {
|
|
const { EnvHttpProxyAgent, setGlobalDispatcher } = m;
|
|
setGlobalDispatcher(new EnvHttpProxyAgent());
|
|
});
|
|
}
|