Heim > Backend-Entwicklung > Golang > Go Gin: Wie lese ich mehrere Routensegmente?

Go Gin: Wie lese ich mehrere Routensegmente?

WBOY
Freigeben: 2024-02-09 15:39:09
nach vorne
816 Leute haben es durchsucht

Go gin:如何读取多个路线段?

php-Editor Baicao bietet Ihnen ein praktisches Tutorial zum Go-Gin-Framework – „Go-Gin: Wie lese ich mehrere Routensegmente?“. Wenn wir Go Gin für die Webentwicklung verwenden, müssen wir häufig die Parameter mehrerer Routensegmente lesen. In diesem Artikel wird detailliert beschrieben, wie diese Funktion über das Go-Gin-Framework implementiert wird. Egal, ob Sie Anfänger oder erfahrener Entwickler sind, dieses Tutorial kann Ihnen helfen, das Go-Gin-Framework besser zu verstehen und anzuwenden und Ihre Entwicklungseffizienz zu verbessern. Lasst uns gemeinsam erkunden!

Frageninhalt

Ich habe die Route PUT /:folder hinzugefügt, um den Ordner zu erstellen

Ich benötige einen PUT /:folder/:path/to/final/file für den Fall, dass der Benutzer eine neue Datei postet. Ich habe also die Wurzel im ersten Parameter, weiß aber nicht, wie ich eine Route erstellen kann, die 'n' Routensegmente verarbeitet, und sie als einzelne Zeichenfolge liest

Zum Beispiel anrufen

PUT /cats
Nach dem Login kopieren

Ein Ordner mit dem Namen cats wird erstellt. Das funktioniert schon

Ich brauche

PUT /cats/milady/first-year/32312.jpg
Nach dem Login kopieren

Erkannte „Katzen“ als ersten Parameter, bei dem es sich um meinen Ordner auf Benutzerebene handelt Überprüfen Sie dann mylady/firstyear als verschachtelten Unterordner und erstellen Sie ihn nach Bedarf

und 32312.jpg-Dateiname

Wie verwende ich Gin, um die Route festzulegen? Ort

Lösung

Ich habe die Antwort gefunden.

Ich kann Gruppen erstellen, sodass ich unter der Gruppe ein Sternchen für „undefinierte Pfadebene“ verwenden kann

superGroup := router.Group("/:folder")
{
        
    // Create a folder
    superGroup.PUT("", createFolder)

    // Save file into folder
    superGroup.PUT("/*full-path", uploadFile)
}
Nach dem Login kopieren

Dann kann ich lesen full-pathfolder

func uploadFile(c *gin.Context) {

    folder:= c.Param("folder")
    fullPath := c.Param("full-path")

    ....

    c.Status(http.StatusOK)
}
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonGo Gin: Wie lese ich mehrere Routensegmente?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:stackoverflow.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage