14 个版本 (3 个稳定版)
1.2.0 | 2024年1月17日 |
---|---|
1.1.0 | 2024年1月17日 |
0.3.0-alpha2 | 2023年6月15日 |
0.3.0-alpha-openapigenera… | 2023年5月16日 |
0.1.2 | 2022年10月5日 |
#26 in #access
每月 91 次下载
395KB
4K SLoC
boaviztapi-sdk-rust
Rust 客户端库,用于 Boaviztapi。
支持的版本
- SDK 版本 1.2.0 支持 Boavizta API 1.2.0
- SDK 版本 1.1.0 支持 Boavizta API 1.1.0
- SDK 版本 1.0.1 支持 Boavizta API 1.0.1(和历史 0.3.x 系列)
- SDK 版本 0.3.X 支持 0.3.x 系列的 Boavizta API
- SDK 版本 0.2.x 支持 0.2.x 系列的 Boavizta API(自 Boavizta API v0.3.x 发布后,SDK 和 API 将不再更新 - 约为 2023 年 6 月)
文档
- SDK 文档(crate) boavizta_api_sdk - Rust
- Boavizta API 文档
如何为 BoaviztaAPI 最新版本生成 SDK
SDK 是从已发布的 Boaviztapi openAPI 规范生成的 (http://api.boavizta.org/openapi.json)。
我们使用 openapi-generator-cli 生成 SDK。见 GitHub - OpenAPITools/openapi-generator-cli: A node package wrapper for https://github.com/OpenAPITools/openapi-generator .
# Generate for public API
docker run --rm -v "${PWD}:/local" openapitools/openapi-generator-cli generate -i http://api.boavizta.org/openapi.json -g rust -o /local/ --package-name boavizta_api_sdk
# Local API (dev, using network host /!\)
docker run --network=host --rm -v "${PWD}:/local" openapitools/openapi-generator-cli generate -i https://127.0.0.1:5000/openapi.json -g rust -o /local/ --package-name boavizta_api_sdk
生成的代码在可使用之前需要一些手动更新。
如何为特定版本的 API 生成 SDK
要为 特定 版本的 BoaviztaAPI(例如开发分支或未发布版本)生成 SDK,你必须
- 检索 API 的 openapi.yml 规范
- 运行生成器对此文件进行操作
- 如果需要,发布具有 alpha 版本的生成的 SDK
在发布 SDK 之前更新 Cargo.toml
Cargo.toml 的元数据会被生成过程覆盖。
- 验证包的版本是否一致
- 使用以下值更新它
description = "A Rust client/sdk to access Boavizta API"
homepage = "https://boavizta.org"
repository = "https://github.com/Boavizta/boaviztapi-sdk-rust/"
readme = "README.md"
authors = ["boavizta.org", "olivier de Meringo"]
edition = "2018"
license-file = "LICENSE"
确保对 reqwest
的依赖不使用原生的 SSL(默认功能),而是使用 rust-tls
。这使得交叉编译变得容易得多。
[dependencies.reqwest]
version = "^0.11"
default-features = false
features = ["json", "multipart", "rustls-tls"]
如何发布 SDK
这是一个手动操作,应由 SDK 的维护者完成。
cargo login
cargo publish --dry-run
cargo publish
依赖项
~4–18MB
~249K SLoC