cannot use time.Now().Add(time.Hour * 24).Unix() (type int64) as type *jwt.Time in field value
encryptblockr opened this issue · 3 comments
encryptblockr commented
Why am i getting this error?
cannot use time.Now().Add(time.Hour * 24).Unix() (type int64) as type *jwt.Time in field value
Here is what i have
import (
"github.com/gofiber/fiber/v2"
"golang.org/x/crypto/bcrypt"
"github.com/dgrijalva/jwt-go/v4"
"strconv"
"time"
)
payload := jwt.StandardClaims{
Subject: strconv.Itoa(int(user.Id)),
ExpiresAt: time.Now().Add(time.Hour * 24).Unix(),
}
token, err := jwt.NewWithClaims(jwt.SigningMethodHS256, payload).SignedString([]byte("secret"))
What am i doing wrong here???
issue is on this particular line
ExpiresAt: time.Now().Add(time.Hour * 24).Unix(),
encryptblockr commented
I have also tried the following
payload := &jwt.StandardClaims{
Subject: strconv.Itoa(int(user.Id)),
ExpiresAt: time.Now().Add(time.Hour * 24),
}
i get this error
cannot use time.Now().Add(time.Hour * 24) (type time.Time) as type *jwt.Time in field value
funny thing is i see this as part of the examples here https://github.com/dgrijalva/jwt-go/blob/master/example_test.go#L18 but yet does not work for me
payload := &jwt.StandardClaims{
Subject: strconv.Itoa(int(user.Id)),
ExpiresAt: 3600,
}
i get this error
cannot use 3600 (type int) as type *jwt.Time in field value
levniko commented
could you fixed that error. I got same
naruepanart commented
try change import
from "github.com/dgrijalva/jwt-go/v4"
to "github.com/dgrijalva/jwt-go"