从0开始学go第六天

方法一: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")

}

效果:

从0开始学go第六天_第1张图片

方法二: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")

}

效果: 

从0开始学go第六天_第2张图片

方法三: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")

}

效果:

从0开始学go第六天_第3张图片

从0开始学go第六天_第4张图片

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

你可能感兴趣的:(golang,开发语言,后端)