go:遍历获取gin请求的所有参数


背景:为了提高程序的通用性,需要将前端request中请求的参数,包含表单参数全部取到.

 

代码:

 1 func DataMapByRequest(c *gin.Context)(dataMap map[string]string,err error)  {
 2     //必须先解析Form
 3     c.Request.ParseForm()
 4     dataMap = make(map[string]string)
 5     //说明:须post方法,加: 'Content-Type': 'application/x-www-form-urlencoded'
 6     for key, valueArray := range c.Request.PostForm {
 7         if len(valueArray)>1{
 8             errMsg := fmt.Sprintf("#ERROR#[%s]参数设置了[%d]次,只能设置一次.",key,len(valueArray))
 9             return nil,errors.New(errMsg)
10         }
11         dataMap[key] = c.PostForm(key)
12     }
13     //
14     for key,_ := range c.Request.URL.Query(){
15         dataMap[key] = c.Query(key)
16     }
17 
18     return
19 }

 


免责声明!

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



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