jstasiak / sectok

A Rust library to interact with RFC 8959 (https://tools.ietf.org/html/rfc8959) secret-token URIs.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

sectok

crates.io docs.rs codecov

A Rust library to interact with RFC 8959 secret-token URIs. Inspired by Lex Robinson's Python implementation.

See the RFC text for motivation and details.

You can find the library documentation on docs.rs.

An example of decoding a URI:

use sectok;
use std::env;

fn main() {
    match env::var("API_KEY") {
        Ok(uri) => {
            println!("The URI: {}", uri);
            match sectok::decode(&uri) {
                Some(token) => println!("The decoded token: {}", token),
                None => println!("The URI is invalid, cannot decode the token"),
            }
        }
        Err(e) => {
            println!("Cannot read environment variable: {}", e);
        }
    }
}
% API_KEY=secret-token:hello%20world cargo run --quiet --example decode
The URI: secret-token:hello%20world
The decoded token: hello world

About

A Rust library to interact with RFC 8959 (https://tools.ietf.org/html/rfc8959) secret-token URIs.


Languages

Language:Rust 100.0%