初始化
更新时间 2025-09-28 10:58:18
最近更新时间: 2025-09-28 10:58:18
使用说明
媒体存储的 C ++ 开发工具包必须通过调用 Aws::InitAPI 进行初始化操作。在应用程序终止之前,必须通过调用 Aws::ShutdownAPI 关闭 SDK。每个方法都接受Aws :: SDKOptions的参数。可以在这两个方法调用之间执行对SDK的所有其他调用。所有的接口调用应该在 Aws::InitAPI 和 Aws::ShutdownAPI 之间被执行。使用媒体存储的 C ++ 开发工具包的所有应用程序都必须包含该文件aws/core/Aws.h。
代码示例
#include <aws/core/Aws.h>
int main(int argc, char** argv)
{
Aws::SDKOptions options;
Aws::InitAPI(options);
{
// make your SDK calls here.
}
Aws::ShutdownAPI(options);
return 0;
}
初始化Aws::S3::S3Client,S3Client是SDK的入口。
// S3Demo.h
#pragma once
#include <memory>
namespace Aws {
namespace S3 {
class S3Client;
}
}
class S3Demo
{
public:
S3Demo();
~S3Demo();
private:
void init();
private:
std::shared_ptr<Aws::S3::S3Client> s3_client;
};
// S3Demo.cpp
#include <aws/core/auth/AWSCredentials.h>
#include <aws/core/client/ClientConfiguration.h>
#include <aws/s3/S3Client.h>
#define OSS_ACCESS_KEY "<your-access-key>"
#define OSS_SECRET_KEY "<your-secret-key>"
#define OSS_ENDPOINT "<your-endpoint>" // e.g. http://xxoss.xstore.ctyun.cn
#define OSS_BUCKET_NAME "<your-bucket-name>"
S3Demo::S3Demo()
{
init();
}
S3Demo::~S3Demo()
{
}
void S3Demo::init()
{
Aws::String ak = OSS_ACCESS_KEY;
Aws::String sk = OSS_SECRET_KEY;
Aws::String endPoint = OSS_ENDPOINT;
Aws::Auth::AWSCredentials cred(ak, sk);
Aws::Client::ClientConfiguration cfg;
cfg.endpointOverride = endPoint;
cfg.scheme = Aws::Http::Scheme::HTTP;
cfg.verifySSL = false;
s3_client = std::make_shared<Aws::S3::S3Client>(cred, cfg,
Aws::Client::AWSAuthV4Signer::PayloadSigningPolicy::Never, false);
}