什么是 Azure SDK for Rust crate?

Azure SDK for Rust 包使 Rust 应用程序能够访问 Azure 服务。 这些客户端库提供一致的惯用体验,使使用 Rust 和 Azure 构建安全且可缩放的云解决方案更容易。

Crates | API 参考文档 | 源代码

Azure SDK for Rust crate 的关键概念

  • 惯用 Rust:使用 Rust 最佳做法和约定构建。
  • 异步支持:全异步 API,支持可插拔运行时(默认为 tokio)。
  • 类型安全性:使用 Rust 的类型系统进行编译时安全。
  • 线程安全性:所有客户端实例方法都是线程安全的,彼此独立。
  • 内存安全:零成本抽象,且无垃圾回收开销。
  • 模块化设计:仅使用所需的箱。
  • 统一配置:使用 ClientOptions.. 配置服务客户端、日志记录和重试。
  • 一致的错误处理:使用 azure_core::Error 在各服务之间一致地处理错误。
  • 响应处理:使用 Response<T>.. 访问详细的 HTTP 响应数据。
  • 分页支持:使用 Pager<T> 异步流处理分页 API。
  • 长时间运行的操作:使用 Poller<T> 等待长时间运行的操作 (LRO)
  • 身份验证抽象:通过 TokenCredential标准化凭据管理。

Rust 指南

Rust 的 Azure SDK 设计指南概述了所有 Azure SDK 箱遵循的核心设计原则和模式。 这些指南可确保面向 Rust 的 SDK 保持一致、直观且符合 Rust 惯用法,从而让开发人员更容易采用和使用 Azure 服务。 通过遵循这些标准,Azure SDK 箱提供熟悉且可预测的体验,并提供与更广泛的 Azure SDK 生态系统一致的身份验证、错误处理和客户端配置的明确模式。

crate 与 REST API 的区别

使用以下信息了解何时使用每种类型的访问。

  • Azure SDK 箱是访问 Azure 服务的首选方法。 这些箱抽象化了管理基于云的 Azure 平台 REST 请求(例如身份验证、重试和日志记录)所需的样板代码。
  • 如果采用以下方法,则 Azure REST API 是首选方法:
    • 使用尚未提供 Azure crate 的服务。 当 Azure SDK crate 可用时,将代码迁移为使用它们。
    • 想要直接发起 REST 调用,因为你不想为了调用单个 REST API 而使用整个 crate,或者你想对 HTTP 请求进行更细粒度的控制。

Rust 版本

Azure SDK crate 支持最常用的 Azure 服务,我们也会根据社区反馈和需求,持续增加对更多服务的支持。

用于 Rust 的 Azure SDK 箱

使用 Azure SDK for Rust 包的索引 查找可用的包、它们的文档和源代码。

后续步骤