Maison >développement back-end >Golang >formulaire html + gin ne peut pas lire correctement le corps de la requête
J'ai ce formulaire en utilisant htmx et j'essaie d'envoyer la valeur d'entrée de la première entrée au serveur gin
<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>
serveur de démarrage
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]" })
J'ai pensé que l'URL de la demande de publication contienne la valeur d'entrée en tant que paramètre, mais je suis presque sûr qu'il existe un moyen de le faire dans le corps de la demande, mais il me manque juste quelque chose. Comment obtenir le corps de la requête ou l'entrée "todo" de la requête ?
Je pense que vous obtenez simplement la chaîne sous forme de []octet.
a := []byte{116, 111, 100, 111, 61, 104, 101, 108, 108, 111} fmt.Print(string(a))
todo=hello
Je ne pense pas que vous ayez besoin d'analyser ceci todo=hello vous-même. Vous pouvez simplement utiliser :
https://www.php.cn/link/7476533956dd3568c1d787c5d33a547f
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!