Documentation ¶
Index ¶
Examples ¶
Constants ¶
This section is empty.
Variables ¶
Functions ¶
Types ¶
type Audience ¶
type Audience []string
Audience RFC 7519.
func (Audience) MarshalJSON ¶
func (*Audience) UnmarshalJSON ¶
type Payload ¶
type Payload struct { PrivateKey ed25519.PrivateKey `json:"-"` PublicKey ed25519.PublicKey `json:"-"` Validator []Validator `json:"-"` Issuer string `json:"iss,omitempty"` Subject string `json:"sub,omitempty"` Audience Audience `json:"aud,omitempty"` ExpirationTime *Time `json:"exp,omitempty"` NotBefore *Time `json:"nbf,omitempty"` IssuedAt *Time `json:"iat,omitempty"` JWTID string `json:"jti,omitempty"` }
Example ¶
seed, err := base64.RawURLEncoding.DecodeString("9ZmhLw2OOCeTXHj02b6LI7Irl7Hw97msGd7o_jhiDkU") if err != nil { panic(err) } pk := ed25519.NewKeyFromSeed(seed) p1 := Payload{ PrivateKey: pk, Subject: "sub", } j, err := json.Marshal(p1) if err != nil { fmt.Println(err) } // fmt.Println(string(j)) p2 := Payload{ PublicKey: pk.Public().(ed25519.PublicKey), Validator: []Validator{ValidSubject("sub")}, } err = json.Unmarshal(j, &p2) if err != nil { fmt.Println(err) } fmt.Printf("%s", p2.Subject)
Output: sub
func (Payload) MarshalJSON ¶
func (*Payload) UnmarshalJSON ¶
type Validator ¶
func ValidAudience ¶
func ValidExpirationTime ¶
func ValidIssuedAt ¶
func ValidIssuer ¶
func ValidNotBefore ¶
func ValidSubject ¶
Click to show internal directories.
Click to hide internal directories.