Einführung
In diesem Projekt lernst du, wie du einen Reverse Proxy mit Node.js erstellen kannst. Ein Reverse Proxy ist ein Server, der zwischen einem Client und einem Backend-Server sitzt, Anfragen vom Client an den Backend-Server weiterleitet und die Antwort an den Client zurückgibt.
👀 Vorschau

🎯 Aufgaben
In diesem Projekt wirst du lernen:
- Wie du einen HTTP-Server mit Node.js erstellen kannst
- Wie du die
Stream pipeverwendest, um die GitHub-Antwortdaten direkt an den Client zu übergeben - Wie du den Reverse Proxy-Server startest und testest
🏆 Errungenschaften
Nach Abschluss dieses Projekts wirst du in der Lage sein:
- Den Begriff eines Reverse Proxys zu verstehen und wie er funktioniert
- Einen Reverse Proxy mit Node.js zu erstellen, um Anfragen an die GitHub-Website zu proxyieren
- Die Reverse-Proxy-Funktionalität mit der
Stream pipeumzusetzen - Den Reverse Proxy-Server zu starten und zu testen
Implementiere den Reverse Proxy
Um loszulegen, öffne den Editor. Du solltest eine Datei im Editor sehen - "proxy.js".
In diesem Schritt lernst du, wie du die Stream pipe verwendest, um die GitHub-Antwortdaten direkt an den Client zu übergeben. Folge den Schritten unten, um diesen Schritt abzuschließen:
- Öffne die Datei
proxy.jsund suche den Kommentar// TODOin derhttp.createServer-Funktion. - Ersetze den Kommentar
// TODOdurch folgenden Code:
https.get(uri, function (response) {
response.pipe(res);
});
Dieser Code verwendet die Stream pipe, um die GitHub-Antwortdaten direkt an den Client zu übergeben.
- Speichere die Datei
proxy.js.
Starte den Reverse Proxy-Server
In diesem Schritt lernst du, wie du den Reverse Proxy-Server startest und testest.
- Öffne ein Terminal und navigiere zum Projektverzeichnis.
- Führe den folgenden Befehl aus, um den Reverse Proxy-Server zu starten:
node proxy.js
Du solltest die folgende Ausgabe sehen:
Server running at http://localhost:8080/
- Öffne ein weiteres Terminal und führe den folgenden Befehl aus, um den Reverse Proxy zu testen:
curl --connect-timeout 2 -m 5 localhost:8080/pricing | grep GitHub
Dieser Befehl sendet eine Anfrage an den Reverse Proxy-Server, der wiederum den Inhalt von der GitHub-Website abruft und ihn an den Client zurückgibt.
- Du solltest die GitHub-Preisinformationen im Terminal angezeigt sehen.

Herzlichen Glückwunsch! Du hast erfolgreich einen Reverse Proxy mit Node.js erstellt. Du kannst nun mit dem Reverse Proxy experimentieren, indem du den Code modifizierst und verschiedene Szenarien testest.
Zusammenfassung
Herzlichen Glückwunsch! Du hast dieses Projekt abgeschlossen. Du kannst in LabEx weitere Übungen absolvieren, um deine Fähigkeiten zu verbessern.



