Επιλέξτε τον επιλογέα περιβάλλοντος του proxy-agent ή το δικό σας callback
Συνδέστε τον agent στο εξερχόμενο αίτημα HTTP του Node και διατηρήστε τις απαιτούμενες εξαιρέσεις όταν αντικαθιστάτε την προεπιλεγμένη επιλογή του.
Για κλήση HTTPS από την πλευρά του Express που χρησιμοποιεί την πολιτική proxy του περιβάλλοντος:
import https from 'node:https';
import { ProxyAgent } from 'proxy-agent';
const agent = new ProxyAgent();
const request = https.get('https://service.example/data', { agent }, response => {
console.log(response.statusCode);
response.resume();
});
request.on('error', error => console.error(error.message));Ο τρέχων κατασκευαστής ProxyAgent δέχεται ένα αντικείμενο επιλογών. Χωρίς παράκαμψη διαβάζει την υποστηριζόμενη πολιτική περιβάλλοντος μέσω proxy-from-env και επιλέγει τον agent χαμηλότερου επιπέδου για το URL.
Για σταθερή διαδρομή που ανήκει στην εφαρμογή, αντικαταστήστε την επιλογή μέσω αυτού του αντικειμένου επιλογών:
new ProxyAgent({ getProxyForUrl: () => proxyUrl })Ένα σταθερό callback δεν εφαρμόζει τις αποφάσεις NO_PROXY του προεπιλεγμένου περιβάλλοντος. Υλοποιήστε τις απαιτούμενες άμεσες εξαιρέσεις στον επιλογέα σας όταν το αντικαθιστάτε.
Για επιτρεπόμενη κλήση δημόσιας υπηρεσίας, η λίστα δωρεάν proxy παρέχει υποψηφίους για το proxyUrl; επιλέξτε πρωτόκολλο που υποστηρίζει ο agent. Το σχήμα του URL proxy που επιστρέφεται προσδιορίζει το πρωτόκολλο του μεσάζοντα· το https.get εξακολουθεί να ονομάζει την πραγματική υπηρεσία. Διατηρήστε τον agent για τον φόρτο εργασίας του και καταστρέψτε τον κατά το τερματισμό.
Ο listener του Express δέχεται εισερχόμενα αιτήματα και δεν ρυθμίζει αυτή τη εξερχόμενη σύνδεση. Το fetch που βασίζεται στο Undici χρησιμοποιεί επίσης άλλη είσοδο μεταφοράς: το fetch του Undici με ProxyAgent δέχεται dispatcher, χρησιμοποιώντας έκδοση πακέτου συμβατή με το runtime του Node.