14个不稳定版本 (5个重大更改)
0.7.0 | 2023年7月19日 |
---|---|
0.5.0 | 2023年3月31日 |
0.4.1 | 2022年11月18日 |
0.3.1 | 2022年7月13日 |
0.1.2 | 2021年8月18日 |
#161 in 配置
每月 90 次下载
88KB
2K SLoC
google-groups-settings
Google Groups Settings的完全自动生成、具有偏见的API客户端库。
API详细信息
管理群组的权限级别和相关设置。
联系方式
名称 | 网址 |
---|---|
https://google.com |
许可证
名称 | 网址 |
---|---|
创意共享署名3.0 | http://creativecommons.org/licenses/by/3.0/ |
客户端详细信息
此客户端基于API规范版本 v1
从Google Groups Settings OpenAPI规范生成。这样,它将随着新功能的添加而保持最新。库的文档与代码一同生成,使库易于使用。
要安装库,请将以下内容添加到您的 Cargo.toml
文件中。
[dependencies]
google-groups-settings = "0.7.0"
基本示例
典型使用将需要初始化一个 Client
。这需要一个用户代理字符串和一组凭证。
use google_groups_settings::Client;
let google groups settings = Client::new(
String::from("client-id"),
String::from("client-secret"),
String::from("redirect-uri"),
String::from("token"),
String::from("refresh-token")
);
或者,库可以在环境中搜索客户端所需的大部分变量
GOOGLE GROUPS SETTINGS_CLIENT_ID
GOOGLE GROUPS SETTINGS_CLIENT_SECRET
GOOGLE GROUPS SETTINGS_REDIRECT_URI
然后您可以从环境中创建客户端。
use google_groups_settings::Client;
let google groups settings = Client::new_from_env(
String::from("token"),
String::from("refresh-token")
);
传递空值给 token
和 refresh_token
是可以的。在客户端的初始状态下,您将不知道这些值。
要启动一个新的客户端并获取 token
和 refresh_token
,请使用以下命令。
use google_groups_settings::Client;
async fn do_call() {
let mut google groups settings = Client::new_from_env("", "");
// Get the URL to request consent from the user.
// You can optionally pass in scopes. If none are provided, then the
// resulting URL will not have any scopes.
let user_consent_url = google groups settings.user_consent_url(&["some-scope".to_string()]);
// In your redirect URL capture the code sent and our state.
// Send it along to the request for the token.
let code = "thing-from-redirect-url";
let state = "state-from-redirect-url";
let mut access_token = google groups settings.get_access_token(code, state).await.unwrap();
// You can additionally refresh the access token with the following.
// You must have a refresh token to be able to call this function.
access_token = google groups settings.refresh_access_token().await.unwrap();
}
依赖关系
~22–37MB
~722K SLoC