Heim > Backend-Entwicklung > Golang > HTML-Formular + Gin kann den Anforderungstext nicht richtig lesen

HTML-Formular + Gin kann den Anforderungstext nicht richtig lesen

WBOY
Freigeben: 2024-02-05 22:39:07
nach vorne
1129 Leute haben es durchsucht

htmx 表单 + gin 无法正确读取请求正文

Frageninhalt

Ich habe dieses Formular, das Htmx verwendet und versucht, den Eingabewert der ersten Eingabe an den Gin-Server zu senden

<form hx-post="/addtodo" hx-ext="json-enc" hx-trigger="submit" hx-target="#todos" hx-swap="outerhtml">
    <input type="text" placeholder="todo" name="todo" />
    <input type="submit" />
</form>

<ol id="todos"></ol>
Nach dem Login kopieren

Gin-Server

r.POST("/addToDo", func(c *gin.Context) {
    fmt.Println(c.Request.Body)
    // ^this prints "&{0xc0000b2000 <nil> <nil> false true {0 0} false false false 0xeaee20}"

    jsonData, err := ioutil.ReadAll(c.Request.Body)

    if err != nil {
        fmt.Println("something went wrong here boys")
        return
    }

    fmt.Println(jsonData)
    // ^this prints "[116 111 100 111 61 104 101 108 108 111]"
})
Nach dem Login kopieren

Ich habe darüber nachgedacht, dass die Post-Anfrage-URL den Eingabewert als Parameter enthält, aber ich bin mir ziemlich sicher, dass es eine Möglichkeit gibt, das im Anfragetext zu tun, aber mir fehlt einfach etwas. Wie erhalte ich den Anforderungstext oder die Abfrage „todo“-Eingabe?


Richtige Antwort


Ich glaube, Sie erhalten die Zeichenfolge nur als []Byte.

a := []byte{116, 111, 100, 111, 61, 104, 101, 108, 108, 111}
  fmt.Print(string(a))
Nach dem Login kopieren

todo=hello

Ich glaube nicht, dass Sie dieses todo=hello selbst analysieren müssen. Sie können einfach Folgendes verwenden:

https://www.php.cn/link/7476533956dd3568c1d787c5d33a547f

Das obige ist der detaillierte Inhalt vonHTML-Formular + Gin kann den Anforderungstext nicht richtig lesen. 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