private COSClient getCOSClient() { if (cosClient == null) { // 1 初始化用户身份信息(secretId, secretKey) COSCredentials cred = new BasicCOSCredentials(secretId, secretKey); // 2 设置bucket的区域, COS地域的简称请参照 https://cloud.tencent.com/document/product/436/6224 ClientConfig clientConfig = new ClientConfig(new Region(region)); cosClient = new COSClient(cred, clientConfig); } return cosClient; }
/** * Creates an COS {@code ClientConfiguration} using an Alluxio Configuration. * * @return the COS {@link ClientConfig} */ private static ClientConfig createCOSClientConfig(String regionName, UnderFileSystemConfiguration conf) { ClientConfig config = new ClientConfig(new Region(regionName)); config.setConnectionTimeout((int) conf.getMs(PropertyKey.COS_CONNECTION_TIMEOUT)); config.setSocketTimeout((int) conf.getMs(PropertyKey.COS_SOCKET_TIMEOUT)); config.setMaxConnectionsCount(conf.getInt(PropertyKey.COS_CONNECTION_MAX)); return config; }
private void init(){ Credentials credentials = new Credentials(config.getQcloudAppId(), config.getQcloudSecretId(), config.getQcloudSecretKey()); //初始化客户端配置 ClientConfig clientConfig = new ClientConfig(); //设置bucket所在的区域,华南:gz 华北:tj 华东:sh clientConfig.setRegion(config.getQcloudRegion()); client = new COSClient(clientConfig, credentials); }
public AbstractCosHttpClient(ClientConfig config) { super(); this.config = config; this.connectionManager = new PoolingHttpClientConnectionManager(); this.connectionManager.setMaxTotal(config.getMaxConnectionsCount()); this.connectionManager.setDefaultMaxPerRoute(config.getMaxConnectionsCount()); this.connectionManager.setValidateAfterInactivity(1); HttpClientBuilder httpClientBuilder = HttpClients.custom().setConnectionManager(connectionManager); if (config.getHttpProxyIp() != null && config.getHttpProxyPort() != 0) { HttpHost proxy = new HttpHost(config.getHttpProxyIp(), config.getHttpProxyPort()); httpClientBuilder.setProxy(proxy); } this.httpClient = httpClientBuilder.build(); this.requestConfig = RequestConfig.custom() .setConnectionRequestTimeout(this.config.getConnectionRequestTimeout()) .setConnectTimeout(this.config.getConnectionTimeout()) .setSocketTimeout(this.config.getSocketTimeout()).build(); this.idleConnectionMonitor = new IdleConnectionMonitorThread(this.connectionManager); this.idleConnectionMonitor.setDaemon(true); this.idleConnectionMonitor.start(); }
private void init(){ Credentials credentials = new Credentials(config.getQcloudAppId(), config.getQcloudSecretId(), config.getQcloudSecretKey()); //初始化客户端配置 ClientConfig clientConfig = new ClientConfig(); //设置bucket所在的区域,华南:gz 华北:tj 华东:sh clientConfig.setRegion(config.getQcloudRegion()); client = new COSClient(clientConfig, credentials); }
private void initHttpClient() { this.connectionManager.setMaxTotal(this.clientConfig.getMaxConnectionsCount()); this.connectionManager.setDefaultMaxPerRoute(this.clientConfig.getMaxConnectionsCount()); this.connectionManager.setValidateAfterInactivity(1); HttpClientBuilder httpClientBuilder = HttpClients.custom().setConnectionManager(connectionManager); if (this.clientConfig.getHttpProxyIp() != null && this.clientConfig.getHttpProxyPort() != 0) { HttpHost proxy = new HttpHost(this.clientConfig.getHttpProxyIp(), this.clientConfig.getHttpProxyPort()); httpClientBuilder.setProxy(proxy); } this.httpClient = httpClientBuilder.build(); this.requestConfig = RequestConfig.custom() .setContentCompressionEnabled(false) .setConnectionRequestTimeout( this.clientConfig.getConnectionRequestTimeout()) .setConnectTimeout(this.clientConfig.getConnectionTimeout()) .setSocketTimeout(this.clientConfig.getSocketTimeout()).build(); this.idleConnectionMonitor = new IdleConnectionMonitorThread(this.connectionManager); this.idleConnectionMonitor.setDaemon(true); this.idleConnectionMonitor.start(); }
@PostConstruct public void init() { COSCredentials cred = new BasicCOSCredentials(key, secret); ClientConfig clientConfig = new ClientConfig(new Region(region)); client = new COSClient(cred, clientConfig); }
private void init(){ Credentials credentials = new Credentials(config.getQcloudAppId(), config.getQcloudSecretId(), config.getQcloudSecretKey()); //初始化客户端配置 ClientConfig clientConfig = new ClientConfig(); //设置bucket所在的区域,华南:gz 华北:tj 华东:sh clientConfig.setRegion(config.getQcloudRegion()); client = new COSClient(clientConfig, credentials); }
private void initHttpClient() { this.connectionManager.setMaxTotal(this.clientConfig.getMaxConnectionsCount()); this.connectionManager.setDefaultMaxPerRoute(this.clientConfig.getMaxConnectionsCount()); this.connectionManager.setValidateAfterInactivity(1); HttpClientBuilder httpClientBuilder = HttpClients.custom().setConnectionManager(connectionManager); if (this.clientConfig.getHttpProxyIp() != null && this.clientConfig.getHttpProxyPort() != 0) { HttpHost proxy = new HttpHost(this.clientConfig.getHttpProxyIp(), this.clientConfig.getHttpProxyPort()); httpClientBuilder.setProxy(proxy); } this.httpClient = httpClientBuilder.build(); this.requestConfig = RequestConfig.custom() .setContentCompressionEnabled(false) .setConnectionRequestTimeout( this.clientConfig.getConnectionRequestTimeout()) .setConnectTimeout(this.clientConfig.getConnectionTimeout()) .setSocketTimeout(this.clientConfig.getSocketTimeout()).build(); this.idleConnectionMonitor = new IdleConnectionMonitorThread(this.connectionManager); this.idleConnectionMonitor.setDaemon(true); this.idleConnectionMonitor.start(); }
ClientConfig clientConfig = new ClientConfig(new Region("ap-beijing-1"));
private void init(){ Credentials credentials = new Credentials(config.getQcloudAppId(), config.getQcloudSecretId(), config.getQcloudSecretKey()); //初始化客户端配置 ClientConfig clientConfig = new ClientConfig(); //设置bucket所在的区域,华南:gz 华北:tj 华东:sh clientConfig.setRegion(config.getQcloudRegion()); client = new COSClient(clientConfig, credentials); }
ClientConfig clientConfig = new ClientConfig(new Region("ap-beijing-1"));
ClientConfig clientConfig = new ClientConfig(); clientConfig.setRegion("gz");
public String upload (String localFilePath) { Preconditions.checkArgument("true".equals(enable),"不允许上传"); COSCredentials cred = new BasicCOSCredentials(accessKey, secretKey); // 2 设置bucket的区域, COS地域的简称请参照 https://cloud.tencent.com/document/product/436/6224 ClientConfig clientConfig = new ClientConfig(new Region("ap-chengdu")); // 3 生成cos客户端 COSClient cosClient = new COSClient(cred, clientConfig); // bucket的命名规则为{name}-{appid} ,此处填写的存储桶名称必须为此格式 String bucketName = bucket; // 简单文件上传, 最大支持 5 GB, 适用于小文件上传, 建议 20 M 以下的文件使用该接口 // 大文件上传请参照 API 文档高级 API 上传 File localFile = new File(localFilePath); // 指定要上传到 COS 上的路径 String key = Paths.get(localFilePath).getFileName().toString(); PutObjectRequest putObjectRequest = new PutObjectRequest(bucketName, key, localFile); PutObjectResult putObjectResult = cosClient.putObject(putObjectRequest); logger.info("result:{},{}", putObjectResult.getContentMd5(),putObjectResult.getETag()); String finalUrl = String.format("%s/%s", domainOfBucket, key); logger.info("file url:{}", finalUrl); return finalUrl; } }
private COSUtil() { // 1 初始化用户身份信息(secretId, secretKey) COSCredentials cred = new BasicCOSCredentials(secretId, secretKey); // 2 设置bucket的区域, COS地域的简称请参照 https://cloud.tencent.com/document/product/436/6224 ClientConfig clientConfig = new ClientConfig(new Region(region)); // 3 生成cos客户端 cosClient = new COSClient(cred, clientConfig); }
public static void GenerateSimplePresignedDownloadUrl() { // 1 初始化用户身份信息(secretId, secretKey) COSCredentials cred = new BasicCOSCredentials("AKIDXXXXXXXX", "1A2Z3YYYYYYYYYY"); // 2 设置bucket的区域, COS地域的简称请参照 https://www.qcloud.com/document/product/436/6224 ClientConfig clientConfig = new ClientConfig(new Region("ap-beijing-1")); // 3 生成cos客户端 COSClient cosclient = new COSClient(cred, clientConfig); // bucket名需包含appid String bucketName = "mybucket-1251668577"; String key = "aaa.txt"; GeneratePresignedUrlRequest req = new GeneratePresignedUrlRequest(bucketName, key, HttpMethodName.GET); // 设置签名过期时间(可选), 若未进行设置则默认使用ClientConfig中的签名过期时间(5分钟) // 这里设置签名在半个小时后过期 Date expirationDate = new Date(System.currentTimeMillis() + 30 * 60 * 1000); req.setExpiration(expirationDate); URL url = cosclient.generatePresignedUrl(req); System.out.println(url.toString()); cosclient.shutdown(); }
public static void GenerateSimplePresignedDownloadUrl() { // 1 初始化用户身份信息(secretId, secretKey) COSCredentials cred = new BasicCOSCredentials("AKIDXXXXXXXX", "1A2Z3YYYYYYYYYY"); // 2 设置bucket的区域, COS地域的简称请参照 https://www.qcloud.com/document/product/436/6224 ClientConfig clientConfig = new ClientConfig(new Region("ap-beijing-1")); // 3 生成cos客户端 COSClient cosclient = new COSClient(cred, clientConfig); // bucket名需包含appid String bucketName = "mybucket-1251668577"; String key = "aaa.txt"; GeneratePresignedUrlRequest req = new GeneratePresignedUrlRequest(bucketName, key, HttpMethodName.GET); // 设置签名过期时间(可选), 若未进行设置则默认使用ClientConfig中的签名过期时间(5分钟) // 这里设置签名在半个小时后过期 Date expirationDate = new Date(System.currentTimeMillis() + 30 * 60 * 1000); req.setExpiration(expirationDate); URL url = cosclient.generatePresignedUrl(req); System.out.println(url.toString()); cosclient.shutdown(); }
public static void GeneratePresignedDownloadUrlAnonymous() { // 1 初始化用户身份信息, 匿名身份不用传入ak sk COSCredentials cred = new AnonymousCOSCredentials(); // 2 设置bucket的区域, COS地域的简称请参照 https://www.qcloud.com/document/product/436/6224 ClientConfig clientConfig = new ClientConfig(new Region("ap-beijing-1")); // 3 生成cos客户端 COSClient cosclient = new COSClient(cred, clientConfig); // bucket名需包含appid String bucketName = "mybucket-1251668577"; String key = "aaa.txt"; GeneratePresignedUrlRequest req = new GeneratePresignedUrlRequest(bucketName, key, HttpMethodName.GET); URL url = cosclient.generatePresignedUrl(req); System.out.println(url.toString()); cosclient.shutdown(); }
public static void GeneratePresignedDownloadUrlAnonymous() { // 1 初始化用户身份信息, 匿名身份不用传入ak sk COSCredentials cred = new AnonymousCOSCredentials(); // 2 设置bucket的区域, COS地域的简称请参照 https://www.qcloud.com/document/product/436/6224 ClientConfig clientConfig = new ClientConfig(new Region("ap-beijing-1")); // 3 生成cos客户端 COSClient cosclient = new COSClient(cred, clientConfig); // bucket名需包含appid String bucketName = "mybucket-1251668577"; String key = "aaa.txt"; GeneratePresignedUrlRequest req = new GeneratePresignedUrlRequest(bucketName, key, HttpMethodName.GET); URL url = cosclient.generatePresignedUrl(req); System.out.println(url.toString()); cosclient.shutdown(); }
ClientConfig clientConfig = new ClientConfig(new Region("ap-beijing-1"));