欢迎使用阿里云开发者工具套件(SDK)。阿里云C++ SDK让您不用复杂编程即可访问云服务器、云数据库RDS、云监控等多个阿里云服务。本操作介绍如何获取阿里云C++ SDK并开始调用。如果您在使用SDK的过程中遇上任何问题,欢迎加入阿里云官方SDK客户钉钉群 (群号:11771185) 咨询。

环境准备

  • 使用阿里云C++ SDK,您需要一个RAM账号以及一对AccessKey ID和AccessKey Secret。 请在阿里云控制台中的AccessKey管理页面上创建和查看您的AccessKey,或联系您的系统管理员。
  • 使用阿里云SDK调用某个产品的API前,确保您已经在阿里云控制台开通了该产品。

安装阿里云 C++ SDK

  1. 在Linux平台中安装第三方库,包括libcurl、libopenssl、libuuid和libjsoncpp。
    • 在基于Redhat / Fedora的系统上执行以下命令安装第三方库。
      sudo dnf install libcurl-devel openssl-devel libuuid-devel libjsoncpp-devel
    • 在基于Debian / Ubuntu的系统上执行以下命令安装第三方库。
      sudo apt-get install libcurl4-openssl-dev libssl-dev uuid-dev libjsoncpp-dev
  2. 执行以下命令,从GitHub中获取源代码。
    git clone https://github.com/aliyun/aliyun-openapi-cpp-sdk.git

使用C++ SDK

在调用C++ SDK前,您需要首先配置预处理器定义 ALIBABACLOUD_SHARED以动态链接阿里云C++ SDK共享库,然后通过创建Client实例,并指定云服务的地域及提供身份验证参数,最后发送API请求。
#include <iostream>
#include <alibabacloud/core/AlibabaCloud.h>
#include <alibabacloud/ecs/EcsClient.h>

using namespace AlibabaCloud;
using namespace AlibabaCloud::Ecs;

int main(int argc, char** argv)
{
    // 初始化 SDK
    AlibabaCloud::InitializeSdk();
    // 配置 ECS 实例
    ClientConfiguration configuration("<your-region-id>");
    EcsClient client("<your-access-key-id>", "<your-access-key-secret>", configuration);
    // 创建API请求并设置参数
    Model::DescribeInstancesRequest request;
    request.setPageSize(10);
    auto outcome = client.describeInstances(request);
    if (!outcome.isSuccess()) 
    {
        // 异常处理
        std::cout << outcome.error().errorCode() << std::endl;
        AlibabaCloud::ShutdownSdk();
        return -1;
    }
    std::cout << "totalCount: " << outcome.result().getTotalCount() << std::endl;
    // 关闭 SDK
    AlibabaCloud::ShutdownSdk();
    return 0;
}