Golang HTTP Server

Golang HTTP Server
In Go können wir einen HTTP -Server mit dem NET/HTTP -Paket erstellen. Dieses Paket verfügt über eine Vielzahl von Tools und Funktionen, um Ihren eigenen HTTP -Server zu implementieren.

In diesem Artikel werden wir diskutieren, wie Sie einen einfachen HTTP -Server in Go erstellen können. Auf diese Weise können Sie sich mit dem Net/HTTP -Paket vertraut machen.

Erforderliche Importe

Damit wir einen HTTP -Server in Go erstellen können, müssen wir das NET/HTTP -Paket importieren. Es bietet uns Methoden zur Implementierung eines HTTP -Servers mühelos.

Importieren "net/http"

Golang einfacher HTTP -Server

Der erste Schritt beim Erstellen eines HTTP -Servers besteht darin, die HTTP -Endpunkte zu bestimmen. Wenn ein Client beispielsweise auf die Route zugreift, was sollte passieren, http: // localhost: 8080/echo, was passieren sollte?

Wir tun dies, indem wir eine HTTP -Handlerfunktion erstellen. Dies sagt dem Server mit, welche Funktion erledigt werden soll, wenn ein Client den angegebenen Endpunkt trifft.

Ein Beispielcode ist wie unten gezeigt:

Paket Main
Importieren "net/http"
func main ()
// HTTP -Handler für /hi definieren
http.Handlefunc ("/hi", Sayhi)

Das obige Beispiel verwendet das HTTP.HandleFunc (), um anzugeben, welche Funktion ausgeführt werden soll, wenn der Client den /hi -Endpunkt trifft.

Der nächste Schritt besteht darin, die Methode Sayhi () zu definieren. Diese Funktion enthält den Code, den wir ausführen möchten, wenn der Client zugreift /hi.

In unserem Beispiel ist es eine einfache "Hallo" -Meldung. Wir können dies wie im folgenden Code gezeigt tun:

Func Sayhi (W Http.Antwortschreiber, r *http.Anfrage)
fmt.Fprintf (w, "hi")

Die Funktion nimmt zwei Argumente an:

  1. Der Schriftsteller von Typ http.ResponseWriter mit Ihnen ermöglicht es Ihnen, Daten an den HTTP -Client zu senden.
  2. Der Leser des Typs HTTP.Anfrage, die die Datenstruktur für die HTTP -Anforderung vom Client hält.

Die Funktion gibt dann eine Meldung mit der Fprintf -Methode zurück.

Der letzte Schritt besteht darin, den Hörer zu starten. Wir tun dies in der Hauptfunktion, wie im folgenden Beispielcode gezeigt:

ERR: = HTTP.Hörenserve (": 8080", nil)
Wenn er irrt != nil
Protokoll.Tödlich (arr)
zurückkehren

Die Funktion dient dem Server in der angegebenen Portadresse. Zum Beispiel führen wir im obigen Code den Server auf Port 8080 aus.

Inzwischen sollten Sie einen HTTP -Server haben, der die Anforderung an einen bestimmten Endpunkt annimmt und eine Nachricht zurückgibt.

Der vollständige Code ist wie gezeigt:

Paket Main
importieren (
"fmt"
"Protokoll"
"net/http"
)
func main ()
// HTTP -Handler für /hi definieren
http.Handlefunc ("/hi", Sayhi)
ERR: = HTTP.Hörenserve (": 8080", nil)
Wenn er irrt != nil
Protokoll.Tödlich (arr)
zurückkehren


Func Sayhi (W Http.Antwortschreiber, r *http.Anfrage)
fmt.Fprintf (w, "hi")

Jetzt können wir den Server als:

Gehen Sie Server aus.gehen

Öffnen Sie mit dem Webserver Ihren HTTP -Client (Browser) und navigieren Sie zum folgenden Endpunkt.

http: // localhost: 8080/hi

Der Server sollte mit einer Nachricht "Hallo" antworten

Abschluss

Mit dieser Anleitung können Sie einen HTTP -Server mit dem Go Net/HTTP -Paket für GO -Net/HTTP erstellen. Fühlen Sie sich frei, den Server oben zu erweitern und die Dokumentation zu überprüfen, um mehr zu erfahren.

Danke fürs Lesen!