我使用 htmx 有這個表單,嘗試將第一個輸入的輸入值傳送到 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>
gin 伺服器
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]" })
我考慮讓 post 請求 url 包含輸入值作為參數,但我相當確定在請求正文中有一種方法可以做到這一點,但我只是錯過了一些東西。如何取得請求內文或查詢「todo」輸入?
我認為您只是將字串作為 []byte 來取得。
a := []byte{116, 111, 100, 111, 61, 104, 101, 108, 108, 111} fmt.Print(string(a))
todo=hello
#我認為您不需要自己解析這個 todo=hello 。您可以只使用:
https://www.php.cn/link/7476533956dd3568c1d787c5d33a547f
以上是htmx 表單 + gin 無法正確讀取請求內文的詳細內容。更多資訊請關注PHP中文網其他相關文章!