#oauth2 #phabricator #oauth

phabricator-oauth

Phabricator上的OAuth2认证库

9个版本

0.1.8 2024年5月9日
0.1.7 2021年12月24日
0.1.6 2021年7月30日
0.1.5 2021年5月7日
0.1.4 2021年2月25日

认证中排名第344

Download history 75/week @ 2024-05-03 41/week @ 2024-05-10 9/week @ 2024-05-17 3/week @ 2024-05-24 4/week @ 2024-06-28 40/week @ 2024-07-05

每月下载量515

MIT许可证

8KB
109

Phabricator-OAuth

Phabricator上的OAuth2认证库


示例

use phabricator_oauth::*;
...
let phid = String::from("PHABRICATOR_ID");
let secret = String::from("PHABRICATOR_SECRET");
let redirect_url = String::from("https://yourservice.com/auth"); // Exactly like in oauth settings on phabricator
let phabricator_url = String::from("https://phabricator.yourdomain.com");

let client = PhabOAuthClient::new(phid, secret, redirect_url, phabricator_url).unwrap();
...
// Getting URL and CSRF token for authentication on the phabricator
let (redirect_url, _csrf_token) = client.get_auth_url().unwrap();
...
// Getting OAuth token. Code will be in GET parameters in your /auth handler
let token = client.get_token(code).await.unwrap();
let access_token = token.access_token();
...
// Getting current user info
let user = client.get_user(access_token).await.unwrap();

依赖项

~6–18MB
~274K SLoC