Search code examples
gourlencodequery-string

Query Param - Replacing + by blank in golang


I am using golang

func (ph *testHandler) GetData() gin.HandlerFunc {
    return func(ctx *gin.Context) {
        params := ctx.Request.URL.Query()
        search = strings.TrimSpace(params.Get("data"))
   } 
}

here I am passing 'test+test' in url but I am getting 'test test'

How can I do query parsing in golang


Solution

  • The browsers treats + and %20 signs in URL as space character so test+test in query parameter will have value test test. To prevent this you have to manually add URL encoded value of + character literal in the URL - https://example.com?data=test%2Btest

    For other URL encoded values see w3schools.