日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

腾讯云COS对象存储图片文件API的详细步骤过程

發布時間:2023/12/10 编程问答 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 腾讯云COS对象存储图片文件API的详细步骤过程 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.



首先創建一個桶。相當于你存儲圖片的容器。我這里是存儲圖片。

我選則是共有讀,私有寫。因為不選擇共有讀的話,以后別的地方沒辦法訪問
注意:
公有讀權限可以通過匿名身份直接讀取您存儲桶中的數據,存在一定的安全風險,為確保您的數據安全,不推薦此配置,建議您選擇私有。
建議您使用防盜鏈功能,可有效防止流量盜刷現象。

但是這個也有風險,別人可以不通過你的后臺,使用地址直接訪問圖片。如果選擇私有的話,需要后臺才能讀寫圖片。但是每次讀取圖片都需要通過后臺,增加了后臺服務器的壓力。

桶創建好了之后可以進入桶管理。手動上傳圖片。

每張圖片存儲到桶里之后,會有一個自己的外網地址。加上圖片的路徑,和圖片的名稱。形成一個唯一地址,訪問圖片。外網地址是不變的。圖片的路徑和圖片名稱,是存儲時自己指定的 。

然后就是包了。

<!--騰訊云對象存儲--><dependency><groupId>com.qcloud</groupId><artifactId>cos_api</artifactId><version>5.6.45</version></dependency>

這里是我使用的,大家可以找別的版本,或是自己語言的。


這里選擇上傳的方式,然后填寫參數。右邊會生成代碼。但是這里的介紹感覺沒那么詳細。可能因為騰訊的業務太多了。所以api文檔也特別龐大。 需要好幾處結合起來看。我選擇的是基本上傳,不超過5G的。因為我只存儲頭像。所以不會太大

// 指定要上傳的文件 File localFile = new File(localFilePath); // 指定要上傳到的存儲桶 String bucketName = "examplebucket-1250000000"; // 指定要上傳到 COS 上對象鍵 String key = "exampleobject"; PutObjectRequest putObjectRequest = new PutObjectRequest(bucketName, key, localFile); PutObjectResult putObjectResult = cosClient.putObject(putObjectRequest);

這是他生成的原始代碼
**bucketName ** 存儲桶 的名稱。

// 指定要上傳到 COS 上對象鍵
String key = “exampleobject”;
COS 上對象鍵,這個個感覺說的不太清楚,就是你存儲到桶里面的文件的名稱, 和路徑。 他會解析
String key = “111/222/444/99838.png”; 可以這樣寫。會吧1,2,4,解析為文件夾。 加上后面的時間戳文件名,形成一個訪問路徑。服務器在存儲時??梢灾苯佑猛饩W地址,加上自己定義的文件名。形成一個路徑存儲到數據庫。訪問的時候直接由頁面訪問到騰訊,查找圖片。減輕服務器壓力。

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 {@AutowiredCOSClient cosClient;@Testpublic 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。

package com.tanhua.sso.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 org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration;@Configuration public class Coslient {// 1 初始化用戶身份信息(secretId, secretKey)。// SECRETID和SECRETKEY請登錄訪問管理控制臺進行查看和管理@Value("${tengxun.sms.secretId}")private String secretId;@Value("${tengxun.sms.secretKey}")private String secretKey;@Beanpublic COSClient getCosClient() {COSCredentials cred = new BasicCOSCredentials(secretId, secretKey);// 2 設置 bucket 的地域, COS 地域的簡稱請參照 https://cloud.tencent.com/document/product/436/6224// clientConfig 中包含了設置 region, https(默認 http), 超時, 代理等 set 方法, 使用可參見源碼或者常見問題 Java SDK 部分。Region region = new Region("ap-nanjing");ClientConfig clientConfig = new ClientConfig(region);// 這里建議設置使用 https 協議clientConfig.setHttpProtocol(HttpProtocol.https);// 3 生成 cos 客戶端。return new COSClient(cred, clientConfig);}}

他的文檔原始代碼差不多也就這樣,copy過來。修改一下。
主要時加上自己的keyid 和key。我用的時springboot 。spring掃描的時候。
因為我加了@Configuration 注解。會被spring 掃描到。
我在方法上加了@Bean 注解。這是spirng整合第三方類的表示。返回第三方對象。sipring掃描到這個方法時會將方法返回的對象。放到springIOC容器進行管理。所以后面我用到COSClient的之后直接
@Autowired
COSClient cosClient; DI 依賴注入就好了。 如果沒有用spirng 的,可以直接把代碼cpry 過來,拼接上就可以用了。

其實代碼還是滿簡介的,傳入流對象。他自己就可以存儲了。
用他提供的外網地址加key 文件路徑,文件名,可以直接訪問。


補充說明一下這個訪問域名在這。


域名加,存儲的文件名,可以直接訪問

這是我剛剛存儲的一張圖片。沒有加文件路徑。

總結

以上是生活随笔為你收集整理的腾讯云COS对象存储图片文件API的详细步骤过程的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。