gpt4 book ai didi

go - 使用 jwt-go 库 - key 类型无效

转载 作者:行者123 更新时间:2023-12-01 21:13:19 26 4
gpt4 key购买 nike

我正在尝试生成代码中提到的 token ,但尽管我正在使用,但它在这一行上给了我错误

tokenString, err := token.SignedString(mySigningKey) key 类型无效

有什么建议可以解决这个问题吗?

谢谢

package main

import (
"fmt"
"github.com/dgrijalva/jwt-go"
"time"
)

var (
mySigningKey = []byte("secret")
)

func GenerateJWT() (string, error) {

token := jwt.New(jwt.SigningMethodES256)

claims := token.Claims.(jwt.MapClaims)

claims["authorized"] = true
claims["user"] = "ravi"
claims["exp"] = time.Now().Add(time.Minute + 30).Unix()

tokenString, err := token.SignedString(mySigningKey)

if err != nil {
fmt.Println(err)
fmt.Errorf("Something went wrong : %s", err.Error())
return "", err

}
return tokenString, nil
}

func main() {
tokenString, err := GenerateJWT()
if err != nil {
fmt.Println(err)
}
fmt.Println(tokenString)
}

最佳答案

此方法(SigningMethodES256)是ECDSA签名方法,您需要配对 key 进行签名和验证,在您的情况下,最好更改为SigningMethodHS256

    token := jwt.New(jwt.SigningMethodHS256)

关于go - 使用 jwt-go 库 - key 类型无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62229639/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com