我正在努力从 迁移1.3.0到1.4.0(或1.5.0) 并且我发现1.3.0对于以下代码片段
router := gin.New()
router.GET("/func/:id/details", func(c *gin.Context) {
value := c.Param("id")
fmt.Printf("value is %v\n", value)
})即使在请求时也总是会到达处理程序/func//details(注意缺少 URL param),1.4.0而上面的内容将返回404。
是否可以控制这种行为?(以与它相同的方式工作1.3.0?)
我尝试过使用BindUri介绍1.5.0
func main() {
type Params struct {
ID string `uri:"id" binding:"required"`
}
router := gin.New()
router.GET("/func/:id/details", func(c *gin.Context) {
var pp Params
if err := c.BindUri(&pp); err != nil {
log.Errorf("failed binding: %v", err)
c.Status(http.StatusBadRequest)
return
}
log.Printf("params %+v\n", pp)
})
if err := router.Run("localhost:8080"); err != nil {
panic(err)
}
}
404但调用时也会失败(带有)。
哈士奇WWW
蓝山帝景
随时随地看视频慕课网APP
相关分类