这两个初始化方式,初学者一定要分清。
#1. gin.Default()
r := gin.Default()它相当于给你一座已经配好两套基础值班设施的中枢:
LoggerRecovery
也就是:
标准值班大厅
├── 监控记录岗(Logger)
└── 应急抢险岗(Recovery)#2. gin.New()
r := gin.New()它是毛坯大厅,默认没有中间件。
你要自己装:
r := gin.New()
r.Use(gin.Logger())
r.Use(gin.Recovery())#3. 什么时候用谁
| 场景 | 更适合 |
|---|---|
| 你刚开始写服务 | gin.Default() |
| 你要完全自定义中间件链 | gin.New() |
| 你希望只保留 Recovery,不要默认 Logger | gin.New() |
| 你在做很严格的基础设施封装 | gin.New() |
一句话记住:
gin.Default() 是“交警中枢标准装修版”,gin.New() 是“毛坯交警大厅”。