Von Muhammet Sen auf Dienstag, 24. Mai 2022
Kategorie: Application Development

Webanwendungen testen mit ngrok

Ngrok ist eine Anwendung, mit der es Ihnen möglich ist, Webseiten spontan über das Internet zu testen. Dabei ist es dem Nutzer von ngrok möglich, den aktuellen Stand einer Webseite mit Personen aus aller Welt zu teilen, indem die Webseite temporär für jeden zugänglich gemacht wird. 

Responsive Design testen in der Entwicklungsumgebung mit ngrok

In der Web- und Frontendentwicklung muss das Layout auf verschiedenen Geräten berücksichtigt werden, da Webseiten von Endgeräten mit unterschiedlicher Auflösung aufgerufen werden (Responsive Design). Außerdem kann es vorkommen, dass dem Kunden der Entwicklungsstand präsentiert oder mit dem Team diskutiert wird. In einer frühen Phase der Entwicklung steht möglicherweise noch keine Produktiv-Umgebung zur Verfügung. In diesem Fall kommt ngrok ins Spiel. Die Web-Anwendung wird in der Entwicklungsumgebung ausgeführt und über ngrok veröffentlicht.

Was ist ngrok und wie arbeitet die Anwendung?

ngrok veröffentlicht einen lokalen HTTP-Server (s. Abbildung 1). Dazu generiert ngrok einen Link für die Endgeräte im Internet. Auf dem Entwicklungsrechner erstellt ngrok einen Reverse Proxy und leitet eingehende Requests an die Entwickler-Instanz der Webanwendung weiter. ngrok ist nützlich für die Testphase einer Webseite. Für die Produktion eignen sich ‚richtige' Server-Anwendungen, wie beispielsweise Nginx- oder Apache-http-Server. 

Anleitung zur Nutzung von ngrok 

In den folgenden Schritten wird für eine lokal laufende Web-Anwendung ngrok auf einem Entwickler-Rechner mit MS-Windows zum Einsatz gebracht.

Voraussetzungen: 

Um ngrok verwenden zu können wird eine Webseite mit beliebigem Inhalt, und einen (lokalen) Webserver mit einem Listener auf einem beliebigen Port benötigt. Zudem ist eine stabile Internetverbindung erforderlich. 

Schritt 1: Installation von ngrok 

Zuerst wird ngrok installiert. Der Download ist auf der offiziellen Webseite von ngrok möglich. Hier ein Link zum Download.

Schritt 2: Entpacken 

Der Download besteht aus einem ZIP-Ordner, der die Datei „ngrok.exe" enthält. Beim Ausführen der Datei öffnet ngrok ein Terminal-Fenster.

Schritt 3: Nutzung von ngrok 

In folgendem Fallbeispiel wird von einem lokalen Webserver ausgegangen, welcher auf den Port 5000 hört und den Text „Hallo" zurückgibt. Im Web-Browser wird mit der Adresse http://127.0.01:500 'Hallo' ausgegeben (s. Abbildung 2).

Jetzt wird das Terminal benötigt, das sich durch ngrok.exe geöffnet hat. In diesem Terminal muss nun Folgendes eingegeben werden:

ngrok http 5000

Der Befehl bedeutet, dass wir mit ngrok einen HTTP-Server, welcher auf dem Port 5000 läuft, freigeben möchten.

Daraufhin sollte das Terminal ungefähr so aussehen (s. Abbildung 3).

Im Terminal sind hinter dem Wort "Forwarding" Links angegeben, die für den Zugriff auf die Anwendung aus dem Internet benutzt werden können (s. Abbildung 4).

Im Terminal protokolliert ngrok jede Anfragen auf die Webseite, zusammen mit dem HTTP-Response-Code (s. Abbildung 5).

Alternativ zum Terminal stellt ngrok auch eine grafische Oberfläche als Web-Anwendung unter http://127.0.0.1:4040 zur Verfügung (s. Abbildung 6): 

Vorteile 

Nachteile

Alternativen 

Die meisten Router von Internet-Providern ermöglichen den Zugriff auf erweiterte Netzwerkeinstellungen. Mit diesen kann man den Port eines Gerätes bei Bedarf, nur für das eigene Netzwerk freigeben. Zudem gibt es neben ngrok auch andere Anwendungen, welche das „tunneln" des Localhosts ermöglichen. Eine relativ beliebte Alternative ist Localtunnel.

Fazit 

ngrok ist ein nützliches Testing-Tool, das einem Entwickler, eine schnelle und einfache Lösung bieten kann, wenn eine Webseite temporär öffentlich zugänglich sein muss. ngrok eignet sich nicht für das Langzeithosting von Anwendungen.

Seminare

Kommentare hinterlassen