腾讯云COS对象存储图片文件API的详细步骤过程 |
您所在的位置:网站首页 › 腾讯微云的文件名叫啥 › 腾讯云COS对象存储图片文件API的详细步骤过程 |
我选则是共有读,私有写。因为不选择共有读的话,以后别的地方没办法访问 注意: 公有读权限可以通过匿名身份直接读取您存储桶中的数据,存在一定的安全风险,为确保您的数据安全,不推荐此配置,建议您选择私有。 建议您使用防盗链功能,可有效防止流量盗刷现象。 但是这个也有风险,别人可以不通过你的后台,使用地址直接访问图片。如果选择私有的话,需要后台才能读写图片。但是每次读取图片都需要通过后台,增加了后台服务器的压力。 然后就是包了。 com.qcloud cos_api 5.6.45这里是我使用的,大家可以找别的版本,或是自己语言的。
这是他生成的原始代码 **bucketName ** 存储桶 的名称。 // 指定要上传到 COS 上对象键 String key = “exampleobject”; COS 上对象键,这个个感觉说的不太清楚,就是你存储到桶里面的文件的名称, 和路径。 他会解析 String key = “111/222/444/99838.png”; 可以这样写。会吧1,2,4,解析为文件夹。 加上后面的时间戳文件名,形成一个访问路径。服务器在存储时。可以直接用外网地址,加上自己定义的文件名。形成一个路径存储到数据库。访问的时候直接由页面访问到腾讯,查找图片。减轻服务器压力。 package com.tanhua.sso; 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.exception.CosClientException; import com.qcloud.cos.http.HttpProtocol; import com.qcloud.cos.model.PutObjectRequest; import com.qcloud.cos.model.PutObjectResult; import com.qcloud.cos.region.Region; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.context.junit4.SpringRunner; import java.io.File; @SpringBootTest @RunWith(SpringRunner.class) public class CosMain { @Autowired COSClient cosClient; @Test public void sendCos() { try { // 指定要上传的文件 File localFile = new File("C:\\Users\\silence\\Desktop\\9527.png"); // 指定要上传到的存储桶 String bucketName = "tanhua-1255913638"; // 指定要上传到 COS 上对象键 String key = "111/222/444/99838.png"; PutObjectRequest putObjectRequest = new PutObjectRequest(bucketName, key, localFile); cosClient.putObject(putObjectRequest); } catch (CosClientException e) { e.printStackTrace(); } } }这是我copy 过来后自己测试的代码。 这里又有点小坑。cosClient ,他的代码里面直接用了。但是又没说怎么来的。可能接触这方面比较少的话。不太友好。后来我查阅了别的文档。他的文档太多了。我忘了在哪看的了。就不放地址了。但是他有一个地方说了怎么创建这个cosClient。 他的文档原始代码差不多也就这样,copy过来。修改一下。 主要时加上自己的keyid 和key。我用的时springboot 。spring扫描的时候。 因为我加了@Configuration 注解。会被spring 扫描到。 我在方法上加了@Bean 注解。这是spirng整合第三方类的表示。返回第三方对象。sipring扫描到这个方法时会将方法返回的对象。放到springIOC容器进行管理。所以后面我用到COSClient的之后直接 @Autowired COSClient cosClient; DI 依赖注入就好了。 如果没有用spirng 的,可以直接把代码cpry 过来,拼接上就可以用了。
|
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |