#hetzner #server-api #hetzner-cloud

hcloud

非官方的 Rust 库,用于访问 Hetzner 云 API

19 个重大版本发布

0.20.0 2024 年 8 月 9 日
0.19.0 2024 年 2 月 1 日
0.18.0 2023 年 12 月 18 日
0.17.0 2023 年 10 月 22 日
0.1.0 2020 年 6 月 4 日

#173网页编程

Download history 5/week @ 2024-04-27 69/week @ 2024-05-04 134/week @ 2024-05-11 153/week @ 2024-05-18 42/week @ 2024-05-25 131/week @ 2024-06-01 56/week @ 2024-06-08 34/week @ 2024-06-15 43/week @ 2024-06-22 19/week @ 2024-06-29 67/week @ 2024-07-06 27/week @ 2024-07-13 57/week @ 2024-07-20 13/week @ 2024-07-27 84/week @ 2024-08-03 49/week @ 2024-08-10

每月 204 次下载

MIT/Apache

1MB
16K SLoC

hcloud for Rust

Crates.io Documentation Build and test

非官方 Rust 库,用于访问 Hetzner 云 API

概述

hcloud 库可以用于在 Rust 项目中管理 Hetzner 云 API 提供的端点。

此库的 API 客户端代码已使用 Hetzner 云 API 的非官方 OpenAPI 描述OpenAPI Generator 自动生成。

示例

列出所有现有服务器的非常基础的示例

use hcloud::apis::configuration::Configuration;
use hcloud::apis::servers_api;

// set up basic configuration using API token
let mut configuration = Configuration::new();
configuration.bearer_access_token =
   Some("YOUR_HCLOUD_API_TOKEN".to_string());

// get list of all existing servers from servers API
let servers = servers_api::list_servers(&configuration, Default::default())
   .await?
   .servers;

// handle server data
for server in servers {
   println!("{:?}", server);
}

更多示例请查看 Git 仓库中的 examples 目录。

选择 TLS 实现

可以使用 Cargo 功能 选择 reqwest 的底层 TLS 实现。

  • default-tls (默认启用):提供通过 HTTPS 连接的 TLS 支持。
  • native-tls:启用由 native-tls 提供的 TLS 功能。
  • native-tls-vendored:启用 native-tlsvendored 功能。
  • rustls-tls:启用由 rustls 提供的 TLS 功能。

(请参阅 reqwest 文档中的 可选功能)

使用 rustls 提供的 TLS 功能的示例

[dependencies]
hcloud = { version = "*", default-features = false, features = ["rustls-tls"] }

许可证

根据您的选择,受以下任一许可证的约束:

贡献

除非您明确声明,否则您有意提交给工作并包含在 Apache-2.0 许可证中定义的工作中的任何贡献,都将根据上述条款双许可,不附加任何额外条款或条件。

依赖项

~8–22MB
~350K SLoC