Gin框架获取query参数


Gin框架获取query参数

一、Query方式

package main

import (
	"fmt"
	"github.com/gin-gonic/gin"
	"net/http"
)

func main() {
	r := gin.Default()
	// GET请求 url ?后面是querystring参数,key = value格式,多个key-value用&连接
	// eg: /queryParams?name=randySun&age=18
	r.GET("/queryParams", func(c *gin.Context) {
		// 获取浏览器那边发送请求携带的 query string 参数
		name := c.Query("name")
		age := c.Query("age")

		c.JSON(http.StatusOK, gin.H{
			"name": name,
			"age":  age,
		})
	})
	r.Run(":9999")
}

image-20211116222251243

二、DefaultQuery方式

package main

import (
	"fmt"
	"github.com/gin-gonic/gin"
	"net/http"
)

func main() {
	r := gin.Default()
	r.GET("/queryParams", func(c *gin.Context) {

		// 方式二
		name := c.DefaultQuery("name", "body")
		age := c.DefaultQuery("age", "18")
		fmt.Println(name, "555555555555")
		c.JSON(http.StatusOK, gin.H{
			"name": name,
			"age":  age,
		})
	})
	r.Run(":9999")
}

image-20211116222606489

三、GetQuery方式

package main

import (
	"github.com/gin-gonic/gin"
	"net/http"
)

func main() {
	r := gin.Default()
		// 方式三:
		name, ok := c.GetQuery("name") // 取到值返回(值, true),否则(值, false)
		if !ok {
			name = "body"
		}
		age, ok := c.GetQuery("age")
		if !ok {
			age = "18"
		}
		c.JSON(http.StatusOK, gin.H{
			"name": name,
			"age":  age,
		})
	})
	r.Run(":9999")
}

image-20211116223046405


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM