goalng框架Gin中间件的c.Next()有什么作用?

感觉用不用效果一样的啊,看文档说是执行挂起程序,具体怎么好理解一些呢,每个中间件一定要用吗?

阅读 5.6k
评论
    9 个回答

    中间件用的,不要管啥挂不挂起的,我估计是翻译的锅。
    假如你用两个中间件

    // 打印请求处理事件
    func Middleware1(ctx *gin.Context) {
        start:=time.Now() // 记录开始时间
        ctx.Next() // 调用处理过程(会产生调用耗时)
        
        t:=time.Since(start) // 调用处理过程完毕后计算时间差
        fmt.Println(t) // 打印本次请求处理时间差
    }
    func Middleware2(ctx *gin.Context) {
        if(!servic e.CheckLogin(ctx)) { // 登录检测,未登录
            return // 直接return,该请求的处理结束
        }
        ctx.Next() // 登录检测通过,继续后续处理
    }
      相似问题
      推荐文章