Documentation ¶
Overview ¶
jwt поддерживает работу с токенами в формате JSON Web Token.
Example ¶
package main import ( "fmt" "time" "github.com/mdigger/jwt" ) func main() { // создаем шаблон и описываем в нем те вещи, которые // мы хотели бы включать во все токены tmpl := &jwt.Template{ Issuer: "me.mdigger.test", Expire: time.Hour, Created: true, Signer: jwt.NewSignerHS256([]byte(`top secret`)), } // описываем дополнительные поля токена (можно структурой) data := map[string]interface{}{ "user-id": "34529345", } // создаем и подписываем токен token, err := tmpl.Token(data) if err != nil { fmt.Println("Error creating:", err) return } // разбираем токен и получаем данные // если токен не валиден, то вернется ошибка if err := tmpl.Parse(token, &data); err != nil { fmt.Println("Error parsing:", err) return } }
Output:
Index ¶
Examples ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Signer ¶
type Signer struct {
// contains filtered or unexported fields
}
Signer описывает информацию для подписи токена.
func NewSignerHS256 ¶
NewSigner возвращает инициализированный подписчик токена, основанный на алгоритме SHA256.
func NewSignerHS384 ¶
NewSignerHS384 возвращает инициализированный подписчик токена, основанный на алгоритме SHA384.
func NewSignerHS512 ¶
NewSignerHS512 возвращает инициализированный подписчик токена, основанный на алгоритме SHA512.
type Template ¶
type Template struct { Issuer string // кто выдал Subject string // тема Audience []string // кому предназначен Created bool // добавлять дату и время создания Expire time.Duration // время жизни NotBefore time.Duration // добавлять время начала использования Signer *Signer // генератор подписи }
Template описывает основные поля токена, которые будут заполнены автоматически.
Click to show internal directories.
Click to hide internal directories.