#ibm #cloud #abstraction #de #referenced #docs #token

ibmcloud-core

这个用于IBM Cloud的crate是从文档中引用的de api的抽象。

1 个不稳定版本

0.1.3 2021年4月27日
0.1.2 2021年4月27日
0.1.1 2021年4月27日
0.1.0 2021年4月27日
0.0.1 2021年5月8日

#10 in #ibm

MIT/Apache

15KB
262

IBM Cloud Core SDK

Rust

这个crate是从文档中引用的de api的抽象。

第一个抽象是关于身份管理器: https://cloud.ibm.com/apidocs/iam-identity-token-api.json

使用Token和API密钥进行单次认证实现

依赖项

#Cargo.toml
[dependencies]
tokio = { version = "1", features = ["full"] }
ibmcloud-core = "0.1.2"

Main.rs

//src/main.rs
use ibmcloud_core::authenticators::token_api::{
    AuthenticatorApiClient, ResponseType, TokenResponse,
};

#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
    // You Atuhenticator Client
    // Need change your api-key
    let mut auth = AuthenticatorApiClient::new("<YOUR-API-key>".to_string());

    // This turn your client authenticated
    auth.authenticate().await?;
    println!("{:?}", auth.clone());
    
    // If you need to get token, this is the best choice. 
    // This feature manages the life cycle of your token.
    let token = auth.get_token();
    Ok(())
}

依赖项

~8–24MB
~340K SLoC