Gin應用程式REST API取得url請求參數(query string)時,參數可以map的形式傳遞。
範例環境:
- Go 1.16
- Gin 1.7.2
Gin在設定API路徑時使用gin.Context
的QueryMap(key string)
取得map形式的請求參數。
例如下面的API/hello
取得map請求參數names
。
main.go
package main
import "github.com/gin-gonic/gin"
func main() {
router := gin.Default()
router.GET("/hello", func(c *gin.Context) {
names := c.QueryMap("names")
c.JSON(200, names)
})
router.Run()
}
啟動專案用curl命令發送http request curl "http://localhost:8080/hello?names[1]=john&names[2]=mary"
結果如下。注意使用&
連接多個請求參數時,要在url的前後以雙引號"
包起,否則shell會誤認為背景執行符。
$ curl "http://localhost:8080/hello?names[1]=john&names[2]=mary"
{"1":"john","2":"mary"}
沒有留言:
張貼留言