所以我要做的是在有http请求时尝试打开数据库连接,然后再次关闭。我正在使用 pgx 和 gin 包,所以这就是我所做的:
func handleGetUsers(c *gin.Context) {
connectDB()
data, err := allUsers()
if err != nil {
log.Println(err)
return
}
results := struct {
Count int `json:"count"`
Data []User `json:"data"`
}{
Count: len(data),
Data: data,
}
c.JSON(200, results)
defer connectDB()
}
但是如果我试图发出另一个相同的 http 请求,数据库连接已经关闭。有什么我能做的,还是我的逻辑错了