初始化
代码中的accessKey与secretKey是在媒体存储中创建用户后,系统分配给用户用于访问媒体存储的凭证。而 endpoint 是天翼云提供的服务端地址。
AccessKey(AK)和SecretAccessKey(SK)是用户访问媒体存储服务的密钥,密钥的管理和获取方式请查阅媒体存储帮助中心-密钥管理内容。
EndPoint的获取方式请查阅媒体存储帮助中心-基础信息内容。
使用SDK功能前,需要新建Client,代码如下:
String accessKey = "<your-access-key>";
String secretKey = "<your-secret-access-key>";
String endPoint = "<your-endpoint>";
BasicAWSCredentials credentials = new BasicAWSCredentials(accessKey, secretKey);
ClientConfiguration clientConfiguration = new ClientConfiguration();
EndpointConfiguration endpointConfiguration = new EndpointConfiguration(
endpoint, Regions.DEFAULT_REGION.getName());
AmazonS3 s3 = AmazonS3ClientBuilder.standard()
//客户端设置
.withClientConfiguration(clientConfiguration)
//凭证设置
.withCredentials(new AWSStaticCredentialsProvider(credentials))
//endpoint设置
.withEndpointConfiguration(endpointConfiguration)
.build();
如果需要修改客户端的一些默认配置,请在创建Client的时候使用withClientConfiguration方法传入ClientConfiguration实例,一部分示例设置代码如下:
ClientConfiguration clientConfiguration = new ClientConfiguration();
//设置client的最大HTTP连接数
clientConfiguration.setMaxConnections(50);
//设置Socket层超时时间
clientConfiguration.setSocketTimeout(50000);
//设置建立连接的超时时间
clientConfiguration.setConnectionTimeout(50000);
ClientConguration是客户端的配置类,可配置代理、连接超时、最大连接等参数。主要参数如下:
参数 | 描述 | 方法 |
---|---|---|
maxConnections | 允许打开的最大HTTP连接数。默认为50 | ClientConguration.setMaxConnections |
socketTimeout | Socket层传输数据的超时时间(单位:毫秒)。默认为50,000毫秒 | ClientConguration.setSocketTimeout |
connectionTimeout | 建立连接的超时时间(单位:毫秒)。默认为50,000毫秒 | ClientConguration.setConnectionTimeout |
requestTimeout | 等待请求完成的超时时间(单位:毫秒)。默认不超时 | ClientConguration.setRequestTimeout |
clientExecutionTimeout | 客户端请求执行超时时间 (单位:毫秒)。默认不超时 | ClientConguration.setClientExecutionTimeout |
maxErrorRetry | 请求失败后最大的重试次数。默认3次 | ClientConguration.setMaxErrorRetry |
connectionMaxIdleMillis | 如果空闲时间超过此参数的设定值,则关闭连接(单位:毫秒)。默认为60,000毫秒 | ClientConguration.setConnectionMaxIdleMillis |
signerOverride | 若需要使用v2签名,可以设置为"S3SignerType";若需要使用v4签名,可以设置为"AWSS3V4SignerType"。默认为v4签名。 | ClientConguration.setSignerOverride |