方法一:gin获取querystring参数
package main
//querystring
import (
	"net/http"
	"github.com/gin-gonic/gin"
)
func main() {
	r := gin.Default()
	r.GET("/web", func(c *gin.Context) {
		//获取浏览器那边发请求携带的query String参数
		//获取参数最常用的方式
		//通过Query获取请求中携带的query String参数
		name := c.Query("query")
		//
		c.JSON(http.StatusOK, name)
		//
		c.JSON(http.StatusOK, gin.H{
			"name": name,
		})
	})
	r.Run(":9000")
}
效果:

方法二:DefaultQuery带默认参数
package main
//querystring
import (
	"net/http"
	"github.com/gin-gonic/gin"
)
func main() {
	r := gin.Default()
	r.GET("/web", func(c *gin.Context) {
		//获取浏览器那边发请求携带的query String参数
		//获取参数最常用的方式
		//通过Query获取请求中携带的query String参数
		//DefaultQuery,如果能查到就用查到的,查不到就用默认值
		name := c.DefaultQuery("query","somebody")
		//
		c.JSON(http.StatusOK, name)
		//
		c.JSON(http.StatusOK, gin.H{
			"name": name,
		})
	})
	r.Run(":9000")
}
效果:

方法三:GetQuery
package main
//querystring
import (
	"net/http"
	"github.com/gin-gonic/gin"
)
func main() {
	r := gin.Default()
	r.GET("/web", func(c *gin.Context) {
		//获取浏览器那边发请求携带的query String参数
		//获取参数最常用的方式
		//通过Query获取请求中携带的query String参数
		//DefaultQuery,如果能查到就用查到的,查不到就用默认值
		//
		name, ok := c.GetQuery("query")
		if !ok {
			name = "No Value"
		}
		//
		c.JSON(http.StatusOK, name)
		//
		c.JSON(http.StatusOK, gin.H{
			"name": name,
		})
	})
	r.Run(":9000")
}
效果:


可以用&表示多个querystring,但是不建议,因为http表头有限制。









![[MySQL]基础篇](https://img-blog.csdnimg.cn/d1197afd255c428ca50f4f4df6357e79.png)









