昨天写了阿里云的OSS对象存储签名上传,今天把腾讯云的也总结一下,非常简单,开通步骤和开通子用户并授权就不再多说,类比上一篇博客:
https://blog.csdn.net/m0_57249797/article/details/124748601?spm=1001.2014.3001.5501
直接上后端签名代码:
Maven依赖:
<dependency>
<groupId>com.qcloud</groupId>
<artifactId>cos_api</artifactId>
<version>5.6.54</version>
</dependency>
后端代码
@GetMapping("test")
public String doGet() {
// 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("ap-nanjing"));
// 3 生成 cos 客户端
COSClient cosclient = new COSClient(cred, clientConfig);
// bucket名需包含appid
String bucketName = "填你的桶名字";
String key = "test.jpeg";
Date expirationTime = new Date(System.currentTimeMillis() + 30 * 60 * 1000);
// HashMap<String, String> headers = new HashMap<>();
// headers.put("Content-Type","image/jpeg");
// 生成预签名上传 URL
URL url = cosclient.generatePresignedUrl(bucketName, key, expirationTime, HttpMethodName.PUT, new HashMap<>(), new HashMap<>());
return url.toString();
}
postman发送请求获取签名链接:
文章来源:https://www.toymoban.com/news/detail-657428.html
postman拿着签名上传链接,上传文件二进制流(如果用表单上传,请求方法是post,还要带上"key:文件名",与"Content-Type:image/jpeg"才能成功上传)
PUT上传
点击上传后查看上传结果:
获取请求访问地址拼接就不写了,之前写过,更多原理可以问我,或者看上一篇关于阿里云的博客文章来源地址https://www.toymoban.com/news/detail-657428.html
到了这里,关于腾讯云COS云对象存储,分布式解决签名上传的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!