You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

19 lines
346 B
Go

package dbi
import (
"time"
"github.com/golang-jwt/jwt/v5"
)
func GenJWT(user User) (string, error) {
now := time.Now()
claims := jwt.MapClaims{
"sub": user.Username,
"iat": now.Unix(),
"exp": now.Add(time.Hour).Unix(),
}
token := jwt.NewWithClaims(jwt.SigningMethodHS256, claims)
return token.SignedString([]byte(user.APIKey))
}