初始化SDK 代码中的accessKey与secretKey是在媒体存储中创建用户后,系统分配给用户用于访问媒体存储的凭证。而 endpoint 是天翼云提供的服务端地址。 获取访问密钥 AccessKey(AK)和SecretAccessKey(SK)是用户访问媒体存储服务的密钥,密钥的管理和获取方式请查阅 天翼云媒体存储 密钥管理 。 获取Endpoint EndPoint的获取方式请查阅天翼云媒体存储 基础信息查看。 新建Client 使用SDK功能前,需要新建Client,代码如下: java String accessKey " "; String secretKey " "; String endPoint " "; BasicAWSCredentials credentials new BasicAWSCredentials(accessKey, secretKey); ClientConfiguration clientConfiguration new ClientConfiguration(); EndpointConfiguration endpointConfiguration new EndpointConfiguration( endpoint, Regions.DEFAULTREGION.getName()); AmazonS3 s3Client AmazonS3ClientBuilder.standard() //客户端设置 .withClientConfiguration(clientConfiguration) //凭证设置 .withCredentials(new AWSStaticCredentialsProvider(credentials)) //endpoint设置 .withEndpointConfiguration(endpointConfiguration) .build(); 如果需要修改客户端的一些默认配置,请在创建Client的时候使用withClientConfiguration方法传入ClientConfiguration实例,一部分示例设置代码如下: java 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