使用前提
在开始使用 CosManager 和 FileManager 类之前,需要确保以下前提条件已满足:
1. 开通腾讯云对象存储(COS)服务

- 注册腾讯云账号:如果您还没有腾讯云账号,可以前往 腾讯云官网 注册一个账号。
- 开通对象存储(COS)服务:登录腾讯云控制台,进入 COS 服务开通页面,按照指引完成 COS 服务的开通。
- 创建存储桶:在 COS 控制台中创建一个存储桶,用于存储上传的文件。创建时需要设置存储桶的名称、地域、访问权限等参数。
- 获取 API 密钥:在腾讯云控制台的 API 密钥管理页面 中,获取您的
SecretId和SecretKey,这些密钥将用于初始化 COS 客户端。
2. 开通腾讯云数据万象(CI)服务

- 开通数据万象(CI)服务:登录腾讯云控制台,进入 数据万象服务开通页面,按照指引完成 CI 服务的开通。
- 关联存储桶:在数据万象控制台中,将您在 COS 中创建的存储桶关联到 CI 服务,以便使用图片处理、视频处理等功能。
- 配置图片处理规则:在数据万象控制台中,您可以配置图片处理规则,例如图片压缩、裁剪、格式转换等。这些规则可以在上传图片时通过
PicOperations类动态设置。
3. 配置 COS 客户端
在使用 CosManager 和 FileManager 类之前,您需要在项目中配置 COS 客户端,并在 Spring Boot 中注入相关依赖。以下是配置步骤:
3.1 配置 CosClientConfig
CosClientConfig 类用于存储 COS 客户端的配置信息,包括 SecretId、SecretKey、存储桶名称、访问域名等。
package cn.yam.sypicture.config;
import com.qcloud.cos.COSClient;
import com.qcloud.cos.ClientConfig;
import com.qcloud.cos.auth.BasicCOSCredentials;
import com.qcloud.cos.auth.COSCredentials;
import com.qcloud.cos.http.HttpProtocol;
import com.qcloud.cos.region.Region;
import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
@ConfigurationProperties(prefix = "cos.client")
@Data
public class CosClientConfig {
/**
* 域名
*/
private String host;
/**
* secretId
*/
private String secretId;
/**
* 密钥(注意不要泄露)
*/
private String secretKey;
/**
* 区域
*/
private String region;
/**
* 桶名
*/
private String bucket;
@Bean
public COSClient cosClient() {
// 1 初始化用户身份信息(secretId, secretKey)。
// SECRETID 和 SECRETKEY 请登录访问管理控制台 https://console.cloud.tencent.com/cam/capi 进行查看和管理
COSCredentials cred = new BasicCOSCredentials(secretId, secretKey);
// 2 设置 bucket 的地域, COS 地域的简称请参见 https://cloud.tencent.com/document/product/436/6224
// clientConfig 中包含了设置 region, https(默认 http), 超时, 代理等 set 方法, 使用可参见源码或者常见问题 Java SDK 部分。
ClientConfig clientConfig = new ClientConfig(new Region(region));
// 这里建议设置使用 https 协议
// 从 5.6.54 版本开始,默认使用了 https
clientConfig.setHttpProtocol(HttpProtocol.https);
// 3 生成 cos 客户端。
return new COSClient(cred, clientConfig);
}
}
3.2 配置 application.yml
在 Spring Boot 项目中,将腾讯云的相关配置信息写入 application.yml 文件中:
注意这部分内容注意切勿泄露,解决方案请看:https://blog.youkuaiyun.com/web2u/article/details/145445772?spm=1001.2014.3001.5502
tencent:
cos:
secretId: your-secret-id
secretKey: your-secret-key
bucket: your-bucket-name
region: ap-chengdu # 存储桶所在地域
host: https://your-bucket-name.cos.ap-chengdu.myqcloud.com # 存储桶访问域名
3.3 注入依赖
在 CosManager 和 FileManager 类中,通过 @Resource 注解注入 CosClientConfig 和 COSClient:
@Resource
private CosClientConfig cosClientConfig;
@Resource

最低0.47元/天 解锁文章
1513

被折叠的 条评论
为什么被折叠?



