Ipabasa sa Undici ang proxy environment variables
Gamitin ang EnvHttpProxyAgent nang sinasadya at ihiwalay ang lowercase priority, bypass, nakuhang proxy URL at dinamikong no_proxy.
Gamitin ang EnvHttpProxyAgent kung process environment ang dapat pumili ng ruta. Gumamit ng tahasang Undici ProxyAgent kung dapat nasa client configuration ang endpoint. Ipasa ito sa aktuwal na request; walang fetch call na mababago sa paggawa lang ng agent.
import { EnvHttpProxyAgent, fetch } from 'undici';
const dispatcher = new EnvHttpProxyAgent();
try {
const response = await fetch("https://example.com/", {
dispatcher,
signal: AbortSignal.timeout(15000),
});
console.log(response.status);
await response.arrayBuffer();
} finally {
await dispatcher.close();
}I-save ito bilang proxy-check.mjs sa ES-module setup na may Undici. Ibinibigay ng POSIX launch na ito ang dalawang proxy route at bakanteng bypass list:
http_proxy=http://203.0.113.10:8080 \
https_proxy=http://203.0.113.10:8080 \
no_proxy= \
node proxy-check.mjsPalitan ang endpoint na pang-dokumentasyon ng iyong HTTP proxy o kandidato sa listahan ng HTTP proxy. Para sa tawag na ito ang mga assignment; iba ang syntax sa ibang shell.
Sa Undici 8.12.3, mas inuuna ang lowercase na http_proxy, https_proxy at no_proxy kaysa katapat na uppercase kung pareho silang naroon. May sariling setting na pinipili ang HTTP at HTTPS destination. Ang HTTP-only setting ay fallback din para sa HTTPS; hindi nagbibigay ng HTTP ang HTTPS-only setting. Huwag ipagpalagay na gumagana ang ALL_PROXY convention ng ibang client.
| Input | Kailan ginagamit ng bersyong ito |
|---|---|
| HTTP/HTTPS proxy environment | Pinipili sa paggawa ng agent. Gumawa ng bagong dispatcher kapag binago ang mga endpoint na ito. |
no_proxy ng environment | Sinusuri muli kapag ipinapadala ang mga request. |
noProxy ng constructor | Tahasang nagtatakda ng bypass policy sa halip na sumunod sa susunod na environment change. |
Maaaring tumugma ang bypass sa host at opsyonal na port; isang asterisk lang ay bypass ng proxy sa lahat ng request. Tingnan ang destination match kung walang trapikong nakikita ang proxy.
Sa Windows, hindi pinag-iiba ng main process ang malaking titik sa environment name, kaya hindi magkahiwalay na halaga ang HTTP_PROXY at http_proxy. May dokumentadong case-sensitive na kaibahan sa environment copy ng Node Worker. Isaalang-alang iyon bago itakda ang dalawang baybay para subukan ang priority. Isinasara ng halimbawa ang dispatcher matapos ang trabaho; panatilihin ito habang kailangan ng paulit-ulit na request ang parehong nakuhang endpoint policy.