2017-11-03 65 views
1

我想是这样的:如何覆盖AWS-SDK-CPP端点在本地主机连接到服务器minio:9000

Aws::Client::ClientConfiguration config; 
config.endpointOverride = Aws::String("localhost:9000"); 

它不工作。

看来,AWS-SDK-CPP默认使用虚拟主机:

https://bucket-name/s3.amazonaws.com 

但是,要访问Minio,我们需要路径的方式来访问:

https://localhost:9000/minio/bucket-name 

在AWS-SDK-JAVA ,有:

AmazonS3ClientBuilder.withPathStyleAccessEnabled(true) 

AWS-SDK-CPP中是否有类似的东西?

回答

1

路径风格和虚拟主机之间的切换是在S3Client构造:

S3Client(const Aws::Client::ClientConfiguration& clientConfiguration = Aws::Client::ClientConfiguration(), bool signPayloads = false, bool useVirtualAdressing = true); 

将其关闭,如在:

Aws::Client::ClientConfiguration config; 
config.endpointOverride = Aws::String("172.31.30.127:9000"); 
config.scheme = Aws::Http::Scheme::HTTP; 
auto client = Aws::MakeShared<S3Client>("sample_s3_client", config, false, false); 
相关问题