func qpStr(c *gin.Context, s string, f func(c *gin.Context, s string) string) string {
return f(c, s)
}
func qpInt(c *gin.Context, s string, f func(c *gin.Context, s string) int) int {
return f(c, s)
}
func qpBool(c *gin.Context, s string, f func(c *gin.Context, s string) bool) bool {
return f(c, s)
}
func qs(c *gin.Context, s string) string {
r := ""
if c.Request.URL.Query().Get(s) != "" {
r = c.Request.URL.Query().Get(s)
}
return r
}
func qi(c *gin.Context, s string) int {
r, str := 0, ""
if c.Request.URL.Query().Get(s) != "" {
str = c.Request.URL.Query().Get(s)
i, _err := strconv.Atoi(str)
if _err != nil {
r = 0
} else if _err == nil {
r = i
}
}
return r
}
func qb(c *gin.Context, s string) bool {
return c.Request.URL.Query().Get(s) == "true"
}
return &QueryParameter{
Cycle: qpStr(c, QPContrastCycle, qs),
OverView: qpBool(c, QPVerView, qb),
PageNum: qpInt(c, QPPageNum, qi),
PageSize: qpInt(c, QPPageSize, qi),
}
> 不使用高阶函数前,实现方式
