[−][src]Module jwtinfo::jwt
JWT
jwt
is a collection of utilities to parse JWTs (Json Web Tokens)
Examples
To parse a given JWT as a string:
use jwtinfo::{jwt}; let token_str = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c"; match jwt::parse(token_str) { Ok(token) => { // do something with token assert_eq!(token.header.to_string(), "{\"alg\":\"HS256\",\"typ\":\"JWT\"}"); assert_eq!(token.body.to_string(), "{\"iat\":1516239022,\"name\":\"John Doe\",\"sub\":\"1234567890\"}"); } Err(e) => panic!(e) }
Since jwt::Token
implements str::FromStr
, you can also do the following:
use jwtinfo::{jwt}; let token = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwibmFtZSI6IkpvaG4gRG9lIiwiaWF0IjoxNTE2MjM5MDIyfQ.SflKxwRJSMeKKF2QT4fwpMeJf36POk6yJV_adQssw5c".parse::<jwt::Token>().unwrap(); assert_eq!(token.header.to_string(), "{\"alg\":\"HS256\",\"typ\":\"JWT\"}"); assert_eq!(token.body.to_string(), "{\"iat\":1516239022,\"name\":\"John Doe\",\"sub\":\"1234567890\"}");
Structs
Token | Represents a JWT, composed by a header, a body and a signature |
Enums
JWTParseError | Represents an error while parsing a JWT |
JWTParsePartError | Represents an error while parsing a given part of a JWT |
Functions
parse | Parses a token from a string |