成功最有效的方法就是向有经验的人学习!

中间件使用简述

中间件

中间件介绍

Gin框架允许开发者在处理请求的过程中,加入用户自己的钩子(Hook)函数。
这个钩子函数就叫中间件,中间件适合处理一些公共的业务逻辑
比如 登录认证、权限校验 、数据分页、记录日志、耗时统计等。

全局中间件 

package main

import (
   "fmt"
   "github.com/gin-gonic/gin"
)

func MiddleWare() gin.HandlerFunc {
   return func(c *gin.Context) {
      fmt.Println("我是一个全局中间件")
   }
}
func main() {
   r := gin.Default()
   r.Use(MiddleWare())
   r.GET("/hello", func(c *gin.Context) {
      fmt.Println("执行了Get方法")
      c.JSON(200, gin.H{"msg": "success"})
   })
   r.Run()
}

局部中间件

package main

import (
   "fmt"
   "github.com/gin-gonic/gin"
)

func MiddleWare() gin.HandlerFunc {
   return func(c *gin.Context) {
      fmt.Println("这里可以做一些身份验证等")
   }
}
您暂时无权查看此隐藏内容!

Next()方法

在中间件中调用 next() 方法,会从next()方法调用的地方跳转到视图函数
视图函数执行完成再调用next() 方法 

package main

import (
   "fmt"
   "github.com/gin-gonic/gin"
)
您暂时无权查看此隐藏内容!
/* 开始执行中间件 执行了Get方法 视图函数执行完成后再调用next()方法 */

实现token认证 

http://127.0.0.1:8080/index index   #首页无需token直接访问
http://127.0.0.1:8080/home  #home家目录需要对token进行验证,验证通过才可访问 
package main

import (
   "fmt"
   "github.com/gin-gonic/gin"
)
您暂时无权查看此隐藏内容!

测试效果

内容查看本文隐藏内容查看需要消耗4.5土豆币,请先
土豆币按需购买,不退换,请考虑清楚后购买。
赞(0) 打赏
未经允许不得转载:陈桂林博客 » 中间件使用简述
分享到

大佬们的评论 抢沙发

全新“一站式”建站,高质量、高售后的一条龙服务

微信 抖音 支付宝 百度 头条 快手全平台打通信息流

橙子建站.极速智能建站8折购买虚拟主机

觉得文章有用就打赏一下文章作者

非常感谢你的打赏,我们将继续给力更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫打赏

微信扫一扫打赏

登录

找回密码

注册