package main

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

func TokenAuthMiddleware() gin.HandlerFunc {
	return func(c *gin.Context) {
		// 检查 token
		if c.Query("token") == "" {
			c.JSON(401, gin.H{"error": "Unauthorized"})
			c.Abort() // 中止后续处理
			return
		}

		c.Next()
	}
}

func main() {
	r := gin.Default()

	// 使用认证中间件
	r.Use(TokenAuthMiddleware())

	r.GET("/protected", func(c *gin.Context) {
		c.JSON(200, gin.H{"message": "Access granted"})
	})

	r.Run(":9999")
}
