package main
import (
"github.com/gin-gonic/gin"
"net/http"
)
func main() {
r := gin.Default()
r.Use(newMiddleware())
r.GET("/ping", func(context *gin.Context) {
context.JSON(http.StatusOK, gin.H{
"result": "pong",
})
})
_ = r.Run(":8081")
}
func newMiddleware() gin.HandlerFunc {
return func(context *gin.Context) {
headers := context.Request.Header
if _, ok := headers["Authorization"];!ok {
// 没有携带token
context.JSON(http.StatusUnauthorized,gin.H{
"result":"未登录",
})
// 不能使用return;使用return只是结束当前函数;
// 并没有结束掉后面的中间件和请求..
context.Abort()
}
context.Next()
}
}
gin自定义中间件
最新推荐文章于 2024-01-19 15:12:41 发布