8个版本
0.0.8 | 2023年9月21日 |
---|---|
0.0.7 | 2023年9月21日 |
#548 in WebAssembly
19KB
378 行
在Rust WebAssembly中解析和验证Google JWT令牌
为CloudFlare Workers开发。实验性且未经审查。自行承担风险。
#[derive(Debug, Serialize, Deserialize)]
pub struct Token {
pub email: String,
pub aud: String,
pub iss: String,
pub exp: u64,
}
async fn main() {
let parser = Parser::new("your-google-client-id");
let claims = parser.parse::<Token>("your-token", Instant::now()).await.unwrap();
// Instant::now() is not supported on Cloudflare workers and needs to be replaced.
}
致谢
基于avkviring/jsonwebtoken-google,由于依赖于rand
crate,无法针对WASM。
依赖
~10–23MB
~375K SLoC