初始化SDK
更新時間 2025-09-28 10:53:47
最近更新時間: 2025-09-28 10:53:47
分享文章
代碼中的accessKey與secretKey是在媒體存儲中創建用戶后,系統分配給用戶用于訪問媒體存儲的憑證。而 endpoint 是天翼云提供的服務端地址。
獲取訪問密鑰
AccessKey(AK)和SecretAccessKey(SK)是用戶訪問媒體存儲服務的密鑰,密鑰的管理和獲取方式請查閱 天翼云媒體存儲 密鑰管理 。
獲取Endpoint
EndPoint的獲取方式請查閱天翼云媒體存儲 基礎信息查看。
新建Client
使用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 s3Client = 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 |