#腾讯 #翻译 #SDK #API 客户端 #API 绑定

tencent3

该crate提供了对腾讯云API的编程访问

1个不稳定版本

0.2.0 2023年2月22日
0.1.0 2023年2月22日

#10 in #腾讯

Apache-2.0

38KB
834

概述

具有v3授权的Rust腾讯API客户端。目前仅支持机器翻译API,其他API目前不支持

示例

fn build_client() -> TencentClient<HttpsConnector<HttpConnector>> {
    let client = TencentClient::native(client::Credential {
        key: "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx".to_string(),
        id: "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx".to_string(),
    });
    client
}

fn main()  {
    let client = build_client();
    let call = client
        .translate()
        .text_translate()
        .source("it") // Italy
        .target("zh")
        .project_id(PROJECT_ID)
        .region("REGION")
        .source_text("Credere è destino")
        .build()
        .unwrap();
        // {"Response":{"RequestId":"38b2df48-48e6-4aa5-ace4-xxxxxxxxx","Source":"it","Target":"zh","TargetText":"相信就是命运"}}
    let result = call
        .doit(|body| {
            let string = String::from_utf8(body).unwrap();
            let value = serde_json::from_str::<serde_json::Value>(&string).unwrap();
            let text = value
                .get("Response")
                .and_then(|res| res.get("TargetText"))
                .and_then(|e| e.as_str())
                .unwrap();
            assert_eq!(text, "相信就是命运");
         })
         .await;
}

API结构如下主要项目

客户端

  • 一个中心对象,用于维护状态并允许访问所有活动
  • 创建方法构建器,进而允许访问单个调用构建器

资源

  • 您可以将其应用于活动的首选类型
  • 属性和部分的集合

部分

  • 一组属性,在活动中从未直接使用

活动

  • 应用于资源的操作

依赖项

~17–29MB
~527K SLoC