C++ SDK 使用示例

更新时间:
复制 MD 格式

本文以调用云监控 2.0 的 GetCmsService 接口为例,演示 C++ SDK V2.0(cms20240330)的完整使用流程,包括 SDK 安装、凭证配置和接口调用。其他接口的调用方法类似,仅需替换 Request/Response 类型与字段。

环境要求

  • C++ 11 及以上的编译器

  • CMake 3.0 及以上

安装 SDK

通过 Git 克隆指定版本的源码,使用 CMake 构建:

git clone --branch 10.0.0 https://github.com/alibabacloud-sdk-cpp/cms-20240330.git
cd cms-20240330
mkdir build && cd build
cmake ..
make

源码仓库:alibabacloud-sdk-cpp/cms-20240330

配置访问凭据

通过环境变量配置 AccessKey,避免在代码中硬编码凭据:

export ALIBABA_CLOUD_ACCESS_KEY_ID="<your-access-key-id>"
export ALIBABA_CLOUD_ACCESS_KEY_SECRET="<your-access-key-secret>"

调用 GetCmsService 接口

以下示例调用 GetCmsService 接口,查询云监控 2.0 服务对应产品的开通状态:

#include <alibabacloud/open_api.hpp>
#include <alibabacloud/cms20240330.hpp>

int main() {
    Alibabacloud_OpenApi::Config config;
    // 请确保已正确设置环境变量 ALIBABA_CLOUD_ACCESS_KEY_ID 和 ALIBABA_CLOUD_ACCESS_KEY_SECRET。
    config.accessKeyId     = make_shared<string>(getenv("ALIBABA_CLOUD_ACCESS_KEY_ID"));
    config.accessKeySecret = make_shared<string>(getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET"));
    config.regionId        = make_shared<string>("cn-hangzhou");
    // Endpoint 请参考 https://api.aliyun.com/product/Cms
    config.endpoint        = make_shared<string>("metrics.cn-hangzhou.aliyuncs.com");

    Alibabacloud_Cms20240330::Client client(make_shared<Alibabacloud_OpenApi::Config>(config));

    Alibabacloud_Cms20240330::GetCmsServiceRequest request;
    request.product = "your_value";
    request.service = "your_value";

    Alibabacloud_Cms20240330::GetCmsServiceResponse response = client.getCmsService(
        make_shared<Alibabacloud_Cms20240330::GetCmsServiceRequest>(request)
    );

    printf("%s\n", response.Body.requestId.c_str());
    return 0;
}

步骤介绍

  1. 初始化配置对象 Alibabacloud_OpenApi::Config。Config 对象存放 accessKeyIdaccessKeySecretregionIdendpoint 等配置,Endpoint 如示例中的 metrics.cn-hangzhou.aliyuncs.com

  2. 实例化客户端 Alibabacloud_Cms20240330::Client

  3. 创建对应 API 的 Request 对象 GetCmsServiceRequest

  4. 设置请求参数 productservice

  5. 通过 client.getCmsService() 调用接口,获取 Response 对象。

  6. response.Body 读取返回值,例如 response.Body.requestId

更多接口与示例代码可在 OpenAPI 门户 SDK 示例 查看。