Heim >Backend-Entwicklung >Golang >Wie entschlüssele ich JWT-Tokens in Go mit dgrijalva/jwt-go?

Wie entschlüssele ich JWT-Tokens in Go mit dgrijalva/jwt-go?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-12-10 06:05:09744Durchsuche

How to Decode JWT Tokens in Go using dgrijalva/jwt-go?

Dekodierung von JWT-Tokens mit dgrijalva/jwt-go in Go

In Go kann die Dekodierung von JWT-Tokens mit dgrijalva/jwt-go erreicht werden. Geh in die Bibliothek. Hier ist eine einfache Lösung:

Die Funktion jwt.ParseWithClaims akzeptiert eine jwt.Claims-Schnittstelle als zweites Argument. Anstatt benutzerdefinierte strukturbasierte Ansprüche zu verwenden, stellt die Bibliothek den Typ jwt.MapClaims bereit, der eine kartenbasierte Darstellung der Ansprüche darstellt.

Um ein Token zu dekodieren, können Sie den folgenden Code verwenden:

tokenString := "<YOUR TOKEN STRING>"

claims := jwt.MapClaims{}
token, err := jwt.ParseWithClaims(tokenString, claims, func(token *jwt.Token) (interface{}, error) {
    return []byte("<YOUR VERIFICATION KEY>"), nil
})

// Handle any errors...

// Decode claims into a map
for key, val := range claims {
    fmt.Printf("Key: %v, value: %v\n", key, val)
}

In diesem Code:

  • tokenString enthält das JWT-Token, das von empfangen wurde Client.
  • claims ist eine Karte, die die entschlüsselten Ansprüche enthält.
  • ParseWithClaims analysiert das Token und füllt die Anspruchskarte mit den entschlüsselten Informationen.
  • func legt den verwendeten Verifizierungsschlüssel fest Stellen Sie sicher, dass die Nachricht echt ist und nicht manipuliert wurde.
  • fmt.Printf druckt die Schlüssel und Werte der dekodierten Ansprüche.

Indem Sie diese Schritte befolgen, können Sie JWT-Tokens in Ihrer Go-Anwendung mithilfe der dgrijalva/jwt-go-Bibliothek erfolgreich dekodieren.

Das obige ist der detaillierte Inhalt vonWie entschlüssele ich JWT-Tokens in Go mit dgrijalva/jwt-go?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn