Search code examples
gopostgo-gin

Why is the post request not working in gin golang?


This code does not work, the response will be empty, like this {"test":""}.

    func main() {
            router := gin.Default()

            router.POST("/test", f

unc(c *gin.Context) {
            test := c.Query("test")
            c.JSON(200, gin.H{
                "test": test,
            })
        })
        router.Run()
    }

UPDATED: I found the simple solution via struct:

func test(c *gin.Context) {
    test := struct {
        Test   string `json:"test"`
        Test2 string `json:"test2"`
    }{}
    c.BindJSON(&test)

    c.JSON(200, gin.H{
        "test1":  test.Test,
        "test2": test.Test2,
    })
}

Solution

  • func test(c *gin.Context) {
        test := struct {
            Test   string `json:"test"`
            Test2 string `json:"test2"`
        }{}
        c.BindJSON(&test)
    
        c.JSON(200, gin.H{
            "test1":  test.Test,
            "test2": test.Test2,
        })
    }