4个版本

0.0.4 2024年3月2日
0.0.3 2024年2月29日
0.0.2 2024年2月29日
0.0.1 2024年2月29日

#335 in 身份验证

Download history 8/week @ 2024-03-08 1/week @ 2024-03-15 19/week @ 2024-03-29 186/week @ 2024-04-12

每月129次下载

MIT/Apache

14KB
287 代码行

twitch oauth token


lib.rs:

 use tokio::net::TcpListener;
 use twitch_oauth_token::{pkce::Pkce, Token, TwitchOauth};

 #[tokio::main]
 async fn main() -> Result<(), twitch_oauth::Error> {
     let (pkce_challenge, code_verifier) = Pkce::new_sha256().unwrap();
     // duration 10 sec
     let oauth = TwitchOauth::new("client_id", "client_secret", pkce_challenge, 10);

     let auth_url = oauth.auth_request_url("chat:read");

     // only can bind 3000
     let listener = TcpListener::bind("127.0.0.1:3000")
         .await
         .expect("Failed already bind 3000");

     println!("{}", auth_url);

     let (code, state) = oauth.oauth_server_sync(listener).await?;

     code_verifier(state).unwrap();

     let token = oauth.get_token_json(code).await?;

     Ok(())
 }

依赖项

~11–24MB
~463K SLoC