Χρησιμοποιήστε EnvHttpProxyAgent όταν το περιβάλλον διεργασίας πρέπει να επιλέξει διαδρομή. Χρησιμοποιήστε ρητό Undici ProxyAgent όταν το σημείο πρέπει να ανήκει στη ρύθμιση του πελάτη. Περάστε το στο πραγματικό αίτημα· η δημιουργία του agent από μόνη της δεν αλλάζει καμία κλήση 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();
}

Αποθηκεύστε το ως proxy-check.mjs σε περιβάλλον ES modules με διαθέσιμο Undici. Αυτή η εκκίνηση POSIX δίνει τις δύο διαδρομές proxy και κενή λίστα παρακάμψεων:

http_proxy=http://203.0.113.10:8080 \
https_proxy=http://203.0.113.10:8080 \
no_proxy= \
node proxy-check.mjs

Αντικαταστήστε το σημείο τεκμηρίωσης με το HTTP proxy σας ή υποψήφιο από τη λίστα HTTP proxy. Οι αναθέσεις αφορούν αυτή την εκτέλεση· άλλα κελύφη χρησιμοποιούν διαφορετική σύνταξη.

Στο Undici 8.12.3, τα πεζά http_proxy, https_proxy και no_proxy προηγούνται των κεφαλαίων αντίστοιχων όταν υπάρχουν και τα δύο. Προορισμοί HTTP και HTTPS επιλέγουν δικές τους ρυθμίσεις. Μόνο ρύθμιση HTTP δίνει και εφεδρεία για HTTPS· μόνο HTTPS δεν παρέχει HTTP. Μην υποθέτετε ότι ισχύει η σύμβαση ALL_PROXY άλλου πελάτη.

ΕίσοδοςΠότε τη χρησιμοποιεί αυτή η έκδοση
Περιβάλλον proxy HTTP/HTTPSΕπιλέγεται κατά τη δημιουργία του agent. Φτιάξτε νέο dispatcher μετά την αλλαγή αυτών των σημείων.
no_proxy περιβάλλοντοςΕλέγχεται ξανά όταν αποστέλλονται αιτήματα.
noProxy κατασκευαστήΟρίζει ρητά την πολιτική παράκαμψης αντί να ακολουθεί μελλοντικές αλλαγές περιβάλλοντος.

Οι παρακάμψεις μπορούν να ταιριάξουν υπολογιστές και προαιρετικές θύρες· ένας αστερίσκος μόνος παρακάμπτει τον proxy για κάθε αίτημα. Εξετάστε την αντιστοιχία προορισμού αν ο proxy δεν βλέπει κίνηση.

Στα Windows η κύρια διεργασία δεν ξεχωρίζει πεζά και κεφαλαία στα ονόματα περιβάλλοντος, άρα HTTP_PROXY και http_proxy δεν είναι ανεξάρτητες τιμές. Τα αντίγραφα περιβάλλοντος Node Worker έχουν τεκμηριωμένη διάκριση πεζών-κεφαλαίων. Λάβετέ το υπόψη πριν ορίσετε και τις δύο γραφές για δοκιμή προτεραιότητας. Το παράδειγμα κλείνει τον dispatcher μετά την εργασία· κρατήστε τον όσο επαναλαμβανόμενα αιτήματα χρειάζονται την ίδια αποθηκευμένη πολιτική σημείων.

Σχετικά άρθρα