Undici-ээр проксигийн орчны хувьсагчдыг уншуулах
EnvHttpProxyAgent-ийг зориуд ашиглаж, жижиг үсгийн давуу эрх, тойрох дүрэм, хадгалсан прокси URL болон динамик no_proxy-г ялга.
Замыг процессын орчин сонгох ёстой бол EnvHttpProxyAgent ашигла. Цэг нь клиентийн тохиргоонд байх ёстой бол тодорхой Undici ProxyAgent ашигла. Бодит хүсэлтэд дамжуул; зөвхөн агент үүсгэх нь ямар ч fetch дуудлагыг өөрчлөхгүй.
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();
}Үүнийг Undici ашиглах боломжтой ES-модулийн орчинд proxy-check.mjs гэж хадгал. Энэ POSIX эхлүүлэлт хоёр прокси зам болон хоосон тойрох жагсаалт өгнө:
http_proxy=http://203.0.113.10:8080 \
https_proxy=http://203.0.113.10:8080 \
no_proxy= \
node proxy-check.mjsБаримт бичгийн цэгийг өөрийн HTTP прокси эсвэл HTTP прокси жагсаалтын сонголтоор соль. Утга олголтууд энэ ажиллуулалтад хамаарна; бусад shell өөр бичиглэлтэй.
Undici 8.12.3-д жижиг үсгийн http_proxy, https_proxy, no_proxy нь хоёулаа байвал том үсгийн хосоосоо түрүүлнэ. HTTP ба HTTPS зорилт өөрийн тохиргоог сонгодог. Зөвхөн HTTP тохиргоо HTTPS-ийн нөөц ч болно; зөвхөн HTTPS нь HTTP-г хангахгүй. Өөр клиентийн ALL_PROXY дүрэм үйлчилнэ гэж бүү бод.
| Оролт | Энэ хувилбар хэзээ ашиглах вэ |
|---|---|
| HTTP/HTTPS прокси орчин | Агент үүсэх үед сонгогдоно. Эдгээр цэг өөрчлөгдвөл шинэ dispatcher үүсгэ. |
Орчны no_proxy | Хүсэлтүүд илгээгдэх үед дахин шалгана. |
Бүтээгчийн noProxy | Дараагийн орчны өөрчлөлтийг дагахын оронд тойрох бодлогыг тодорхой тогтооно. |
Тойрох дүрэм хост болон сонголттой порттой таарч болно; ганц од бүх хүсэлтэд проксиг тойрно. Прокси урсгал харахгүй байвал зорилтын тааруулалтыг шалга.
Windows-д үндсэн процесс орчны нэрийн том-жижиг үсгийг ялгахгүй тул HTTP_PROXY ба http_proxy тусдаа утга биш. Node Worker орчны хуулбарууд баримтжуулсан том-жижиг үсгийн ялгаатай. Давуу эрхийг туршихаар хоёр бичлэгийг тохируулахаасаа өмнө үүнийг тооц. Жишээ ажил дуусахад dispatcher-ээ хаадаг; давтагдах хүсэлтэд ижил хадгалсан цэгийн бодлого хэрэгтэй үед түүнийг хадгал.