用于C++的 Azure SDK 提供了一组库,旨在帮助C++开发人员将 Azure 服务集成到其应用程序中。 本文探讨基础 SDK 的基本概念,包括数据和管理平面之间的区别、Azure Core 的角色、包命名约定、客户端对象和配置选项。 了解这些核心概念后,可以在C++应用程序中有效地使用 SDK。
数据平面与管理平面
用于C++的 Azure SDK 提供用于数据平面作的库,但不提供用于管理平面作的库。 数据平面库用于与已预配的 Azure 服务进行交互。 如果需要管理平面库来预配和管理 C++ 中的 Azure 资源,请在 GitHub 存储库上留下问题。
Azure Core 与其他库
Azure Core (azure-core
) 库提供基于其他库构建的基本功能,以便为不同的 Azure 服务提供特定功能。 开发人员需要了解 Azure Core 的角色才能有效地使用 SDK。
主要的共享概念Azure::Core
包括:
- 处理
BodyStream
流数据和输入/输出(I/O)及其派生类型。 - 通过
Response<T>
访问任何 SDK 客户端操作返回模型的 HTTP 响应详细信息。 - 通过
Operation<T>
轮询长时间运行的作业(LROs)。 - 通过基本异常类型
RequestFailedException
,以一致的方式报告服务请求中的错误异常。 - Azure SDK 凭据
TokenCredential
的抽象。 - 可替换的 HTTP 传输层,用于通过网络发送请求和接收响应。
- HTTP 管道和 HTTP 策略(例如重试和日志记录),可通过服务客户端特定的选项进行配置。
包命名方案
用于C++的 Azure SDK 使用一致的命名方案: azure-<group_name>-<service_name>-<sub_service_name>
每个名称都以 azure-
组、服务和子服务(可选)开头。 例如, azure-security-keyvault-secrets
适用于 Azure Key Vault 机密。
客户端对象
用于C++的 Azure SDK 中的客户端对象用于与 Azure 服务交互。 每个客户端对象对应于特定的 Azure 服务,并提供对该服务执行作的方法。 例如, BlobClient
用于与 Azure Blob 存储进行交互。
客户端对象的选项参数
Azure SDK for C++中的客户端对象具有用于自定义与服务交互的选项参数的方法。 这些选项参数可用于设置超时、重试策略和其他配置等设置。