Erstellen Sie Webanwendungen mit Golangs Web-Framework Gin-gonic
Gin-gonic ist ein leichtes, leistungsstarkes Web-Framework, das in der Go-Sprache geschrieben ist, RESTful API unterstützt und einfach zu erweitern ist. In diesem Artikel werden die grundlegende Verwendung von Gin-Gonic, Routing-Einstellungen, die Verwendung von Middleware, das Rendern von Vorlagen usw. vorgestellt.
1. Grundlegende Verwendung
Zuerst müssen wir Gin-gonic installieren. Sie können den folgenden Befehl verwenden, um es zu installieren:
go get -u github.com/gin-gonic/gin
Nachdem die Installation abgeschlossen ist, führen Sie Gin-gonic in die Go-Sprache ein:
import "github.com/gin-gonic/gin"
The Es folgt eine einfache Gingonic-Webanwendung:
package main import "github.com/gin-gonic/gin" func main() { router := gin.Default() router.GET("/", func(c *gin.Context) { c.JSON(200, gin.H{ "message": "Hello, world!", }) }) router.Run(":8080") }
Der obige Code erstellt einen Standard-Gin-Gonic-Router, lauscht auf den lokalen Port 8080 und gibt eine „Hallo, Welt!“-Nachricht im JSON-Format zurück, wenn der Benutzer darauf zugreift.
2. Routing-Einstellungen
Nachdem Sie den Router gemäß den oben genannten Schritten erstellt haben, können Sie den Router verwenden, um das Routing der Anwendung festzulegen. Gin-Gonic Router unterstützt die folgenden HTTP-Methoden: GET, POST, PUT, PATCH, DELETE, OPTIONS und HEAD. Schauen wir uns an, wie eine Route erstellt wird:
func main() { router := gin.Default() // 定义GET请求路由 router.GET("/hello", func(c *gin.Context) { c.JSON(200, gin.H{ "message": "Hello, world!", }) }) // 定义POST请求路由 router.POST("/login", func(c *gin.Context) { // 获取表单中的username和password username := c.PostForm("username") password := c.PostForm("password") c.JSON(200, gin.H{ "username": username, "password": password, }) }) router.Run(":8080") }
Der obige Code definiert zwei Routen, eine ist die GET-Anforderungsroute/Hallo und die andere ist die POST-Anforderungsroute/Login. Wenn der Benutzer auf die Route/Hallo zugreift, Es wird eine Nachricht im JSON-Format zurückgegeben: „Hallo Welt!“. Wenn der Benutzer auf Routing/Anmeldung zugreift, werden die vom Benutzer übermittelten Formulardaten zurückgegeben.
3. Middleware
Gin-Gonic-Middleware ist eine Funktion, die zur Verarbeitung zwischen Anfragen und Antworten verwendet werden kann. Zu den gängigen Middlewares gehören Protokollierung, Authentifizierung, Wiederherstellung usw. Wir können die Middleware des integrierten http-Pakets von Golang oder die Standard-Middleware in Gin-gonic verwenden. Hier ist eine grundlegende Protokollierungs-Middleware:
func main() { router := gin.Default() // 记录中间件 router.Use(func(c *gin.Context) { // 请求之前 // 记录请求时间 start := time.Now() // 请求处理 c.Next() // 请求之后 latency := time.Since(start) log.Print(latency) }) router.GET("/", func(c *gin.Context) { c.JSON(200, gin.H{ "message": "Hello, world!", }) }) router.Run(":8080") }
Der obige Code definiert eine Protokollierungs-Middleware, die die Anforderungsverarbeitungszeit vor und nach jeder Anforderung aufzeichnet.
4. Template-Rendering
Template ist eine gängige Technologie in der Webentwicklung, die es uns ermöglicht, Webanwendungen mithilfe von Front-End-Technologien wie HTML/JavaScript/CSS zu erstellen. Gin-gonic unterstützt das Rendern von Vorlagen über das integrierte HTML-Paket. Wir können Vorlagen verwenden, um dynamische Seiten zu rendern. Hier ist ein einfaches Beispiel für das Rendern einer Vorlage:
func main() { router := gin.Default() // 模板设置 router.LoadHTMLGlob("templates/*.html") router.GET("/", func(c *gin.Context) { c.HTML(200, "index.html", gin.H{ "title": "Gin-gonic", }) }) router.Run(":8080") }
Der obige Code definiert ein einfaches Beispiel für das Rendern einer Vorlage. In diesem Beispiel erstellen wir eine GET-Anfrage für die Root-Route mit dem Gin-Standardrouter. Vorlagendateien sollten im Vorlagenverzeichnis gespeichert werden. In diesem Beispiel haben wir gerade eine index.html-Datei in Form eines H1-Tags mit dem Titel „Gin-gonic“ gerendert.
Zusammenfassend lässt sich sagen, dass Gin-gonic ein sehr leistungsstarkes Web-Framework ist, das einfach zu verwenden und zu erweitern ist und Funktionen wie RESTful API und Template-Rendering unterstützt. Mit Golangs Develop Gin-gonic-Anwendung können wir ganz einfach Webanwendungen erstellen.
Das obige ist der detaillierte Inhalt vonErstellen Sie Webanwendungen mit Golangs Web-Framework Gin-gonic. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

Das sichere Lesen und Schreiben von Dateien in Go ist von entscheidender Bedeutung. Zu den Richtlinien gehören: Überprüfen von Dateiberechtigungen, Schließen von Dateien mithilfe von Verzögerungen, Validieren von Dateipfaden, Verwenden von Kontext-Timeouts. Das Befolgen dieser Richtlinien gewährleistet die Sicherheit Ihrer Daten und die Robustheit Ihrer Anwendungen.

Wie konfiguriere ich Verbindungspooling für Go-Datenbankverbindungen? Verwenden Sie den DB-Typ im Datenbank-/SQL-Paket, um eine Datenbankverbindung zu erstellen. Legen Sie MaxOpenConns fest, um die maximale Anzahl gleichzeitiger Verbindungen festzulegen. Legen Sie ConnMaxLifetime fest, um den maximalen Lebenszyklus der Verbindung festzulegen.

JSON-Daten können mithilfe der gjson-Bibliothek oder der json.Unmarshal-Funktion in einer MySQL-Datenbank gespeichert werden. Die gjson-Bibliothek bietet praktische Methoden zum Parsen von JSON-Feldern, und die Funktion json.Unmarshal erfordert einen Zieltypzeiger zum Unmarshalieren von JSON-Daten. Bei beiden Methoden müssen SQL-Anweisungen vorbereitet und Einfügevorgänge ausgeführt werden, um die Daten in der Datenbank beizubehalten.

Der Unterschied zwischen dem GoLang-Framework und dem Go-Framework spiegelt sich in der internen Architektur und den externen Funktionen wider. Das GoLang-Framework basiert auf der Go-Standardbibliothek und erweitert deren Funktionalität, während das Go-Framework aus unabhängigen Bibliotheken besteht, um bestimmte Zwecke zu erreichen. Das GoLang-Framework ist flexibler und das Go-Framework ist einfacher zu verwenden. Das GoLang-Framework hat einen leichten Leistungsvorteil und das Go-Framework ist skalierbarer. Fall: Gin-Gonic (Go-Framework) wird zum Erstellen der REST-API verwendet, während Echo (GoLang-Framework) zum Erstellen von Webanwendungen verwendet wird.

Die FindStringSubmatch-Funktion findet die erste Teilzeichenfolge, die mit einem regulären Ausdruck übereinstimmt: Die Funktion gibt ein Segment zurück, das die passende Teilzeichenfolge enthält, wobei das erste Element die gesamte übereinstimmende Zeichenfolge und die nachfolgenden Elemente einzelne Teilzeichenfolgen sind. Codebeispiel: regexp.FindStringSubmatch(text,pattern) gibt einen Ausschnitt übereinstimmender Teilzeichenfolgen zurück. Praktischer Fall: Es kann verwendet werden, um den Domänennamen in der E-Mail-Adresse abzugleichen, zum Beispiel: email:="user@example.com", pattern:=@([^\s]+)$, um die Übereinstimmung des Domänennamens zu erhalten [1].

Backend Learning Path: Die Erkundungsreise von Front-End zu Back-End als Back-End-Anfänger, der sich von der Front-End-Entwicklung verwandelt, Sie haben bereits die Grundlage von Nodejs, ...

Die Verwendung vordefinierter Zeitzonen in Go umfasst die folgenden Schritte: Importieren Sie das Paket „time“. Laden Sie eine bestimmte Zeitzone über die LoadLocation-Funktion. Verwenden Sie die geladene Zeitzone für Vorgänge wie das Erstellen von Zeitobjekten, das Analysieren von Zeitzeichenfolgen und das Durchführen von Datums- und Uhrzeitkonvertierungen. Vergleichen Sie Daten mit unterschiedlichen Zeitzonen, um die Anwendung der vordefinierten Zeitzonenfunktion zu veranschaulichen.

Häufig gestellte Fragen zur Go-Framework-Entwicklung: Framework-Auswahl: Hängt von den Anwendungsanforderungen und Entwicklerpräferenzen ab, z. B. Gin (API), Echo (erweiterbar), Beego (ORM), Iris (Leistung). Installation und Verwendung: Verwenden Sie den Befehl gomod, um das Framework zu installieren, zu importieren und zu verwenden. Datenbankinteraktion: Verwenden Sie ORM-Bibliotheken wie gorm, um Datenbankverbindungen und -operationen herzustellen. Authentifizierung und Autorisierung: Verwenden Sie Sitzungsverwaltungs- und Authentifizierungs-Middleware wie gin-contrib/sessions. Praktischer Fall: Verwenden Sie das Gin-Framework, um eine einfache Blog-API zu erstellen, die POST, GET und andere Funktionen bereitstellt.
