So verwenden Sie Proxies in Node.js (fetch und axios)
Node.js 18 und neuer liefern fetch über undici. Ein ProxyAgent sendet jede Anfrage über das Gateway mit Ihrem Benutzernamen und Passwort.
Schritte
- Installieren Sie undici mit npm install undici
- Erstellen Sie einen ProxyAgent mit der Gateway-URL und Ihren Anmeldedaten
- Übergeben Sie ihn als dispatcher an fetch
- Fügen Sie bei Bedarf einen Ländercode oder eine Session-ID zum Benutzernamen hinzu
Beispielcode
import { ProxyAgent, fetch } from "undici";
const agent = new ProxyAgent({
uri: "http://gw.gbproxies.cc:10000",
token: "Basic " + Buffer.from("USERNAME-cc-de:PASSWORD").toString("base64"),
});
const r = await fetch("https://api.ipify.org?format=json", { dispatcher: agent });
console.log(await r.json());Ersetzen Sie USERNAME und PASSWORD durch die Proxy-Anmeldedaten von der Proxies-Seite der Konsole. Port 10000 ist Residential HTTP; siehe die Ports jedes Produkts unten.
Tipps
- Bei axios setzen Sie proxy: { protocol: "http", host, port, auth: { username, password } }
- Erstellen Sie einen Agent pro Session-ID, wenn Sie mehrere sticky IPs gleichzeitig benötigen
Häufige Fragen
Funktioniert es mit HTTPS-Seiten?
Ja. Der Agent öffnet einen CONNECT-Tunnel zum Ziel, daher bleibt HTTPS Ende-zu-Ende verschlüsselt.