27 lines
461 B
Go
27 lines
461 B
Go
package server
|
|
|
|
import (
|
|
"time"
|
|
|
|
"github.com/gin-gonic/gin"
|
|
"github.com/golang-jwt/jwt/v5"
|
|
)
|
|
|
|
var secret = []byte("secret")
|
|
|
|
func StartServer() {
|
|
|
|
r := gin.Default()
|
|
|
|
r.POST("/login", func(c *gin.Context) {
|
|
token := jwt.NewWithClaims(jwt.SigningMethodHS256, jwt.MapClaims{
|
|
"user": "demo",
|
|
"role": "admin",
|
|
"exp": time.Now().Add(24 * time.Hour).Unix(),
|
|
})
|
|
signed, _ := token.SignedString(secret)
|
|
c.JSON(200, gin.H{"token": signed})
|
|
})
|
|
|
|
}
|