编写此包目的,主要是为了验证token,校验用户登陆数据,还可进行权限访问等等:
创建jwt.go。 本演示包位于middleware下
直接上代码,不多说:
package jwt
import (
"github.com/gin-gonic/gin"
"myProject/pkg/e"
"myProject/pkg/util"
"net/http"
"strings"
"time"
)
/**
每一个请求前验证Token
*/
func JWT() gin.HandlerFunc {
return func(c *gin.Context) {
var code int
var data interface{}
code = e.SUCCESS
token := c.Query("token")
//获取header的token-===========================
authString := c.Request.Header.Get("Authorization")
kv := strings.Split(authString, " ")
if len(kv) != 2 || kv[0] != "Bearer" {
code = e.ERROR_AUTH_CHECK_TOKEN_FAIL
return
} else {
token = kv[1]
}
//========