1. 程式人生 > 其它 >乘風破浪,.Net Core遇見阿里雲物件儲存OSS SDK,業界領先的雲服務儲存服務

乘風破浪,.Net Core遇見阿里雲物件儲存OSS SDK,業界領先的雲服務儲存服務

什麼是阿里雲物件儲存OSS

https://www.aliyun.com/product/oss/

阿里雲物件儲存OSSObject Storage Service)是阿里雲提供的海量、安全、低成本、高持久的雲端儲存服務。其資料設計永續性不低於99.9999999999%(12個9),服務可用性(或業務連續性)不低於99.995%

OSS具有與平臺無關的RESTful API介面,您可以在任何應用、任何時間、任何地點儲存和訪問任意型別的資料。使用阿里雲提供的API、SDK介面或者OSS遷移工具輕鬆地將海量資料移入或移出阿里雲OSS。

資料儲存到阿里雲OSS以後,您可以選擇"標準儲存(Standard

)"作為移動應用、大型網站、圖片分享或熱點音視訊的主要儲存方式,也可以選擇成本更低、儲存期限更長的"低頻訪問儲存(Infrequent Access)"、"歸檔儲存(Archive)"、"冷歸檔儲存(Cold Archive)"作為不經常訪問資料的儲存方式。

物件儲存OSS相關概念

https://help.aliyun.com/document_detail/31817.html

  • 儲存型別(Storage Class)

OSS提供標準、低頻訪問、歸檔、冷歸檔四種儲存型別,全面覆蓋從熱到冷的各種資料儲存場景。其中標準儲存型別提供高持久、高可用、高效能的物件儲存服務,能夠支援頻繁的資料訪問;低頻訪問儲存型別適合長期儲存不經常訪問的資料(平均每月訪問頻率1到2次),儲存單價低於標準型別;歸檔儲存型別適合需要長期儲存(建議半年以上)的歸檔資料;冷歸檔儲存適合需要超長時間存放的極冷資料。更多資訊,請參見儲存型別介紹。

  • 儲存空間(Bucket)

儲存空間是您用於儲存物件(Object)的容器,所有的物件都必須隸屬於某個儲存空間。儲存空間具有各種配置屬性,包括地域、訪問許可權、儲存型別等。您可以根據實際需求,建立不同型別的儲存空間來儲存不同的資料。

  • 物件(Object)

物件是OSS儲存資料的基本單元,也被稱為OSS的檔案。物件由元資訊(Object Meta)、使用者資料(Data)和檔名(Key)組成。物件由儲存空間內部唯一的Key來標識。物件元資訊是一組鍵值對,表示了物件的一些屬性,例如最後修改時間、大小等資訊,同時您也可以在元資訊中儲存一些自定義的資訊。

  • 地域(Region)

地域表示OSS的資料中心所在物理位置。您可以根據費用、請求來源等選擇合適的地域建立Bucket。更多資訊,請參見OSS已開通的地域。

  • 訪問域名(Endpoint)

Endpoint表示OSS對外服務的訪問域名。OSS以HTTP RESTful API的形式對外提供服務,當訪問不同地域的時候,需要不同的域名。通過內網和外網訪問同一個地域所需要的域名也是不同的。更多資訊,請參見各個Region對應的Endpoint。

  • 訪問金鑰(AccessKey)

AccessKey簡稱AK,指的是訪問身份驗證中用到的AccessKey ID和AccessKey Secret。OSS通過使用AccessKey ID和AccessKey Secret對稱加密的方法來驗證某個請求的傳送者身份。AccessKey ID用於標識使用者;AccessKey Secret是使用者用於加密簽名字串和OSS用來驗證簽名字串的金鑰,必須保密。

物件儲存OSS常見操作

  • 建立Bucket

在上傳檔案(Object)到OSS之前,您需要建立一個用於儲存檔案的Bucket。Bucket具有各種配置屬性,包括地域、訪問許可權以及其他元資料。

  • 上傳檔案

Bucket建立完成後,您可以通過多種方式上傳不同大小的檔案。

  • 下載檔案

檔案上傳完成後,您可以將檔案下載至瀏覽器預設路徑或本地指定路徑。

  • 列舉檔案

當您Bucket記憶體儲了大量的檔案後,您可以選擇列舉Bucket內的全部或部分檔案。

  • 刪除檔案

當您不再需要保留上傳的檔案時,您可以手動刪除單個或多個檔案,也可以通過配置生命週期規則自動刪除單個或多個檔案。

勤學勤練

建立解決方案及目錄

1. 新建名為"HelloAliyunOss"的解決方案

dotnet new sln -o HelloAliyunOss

2. 切換到"HelloAliyunOss"目錄

cd .\HelloAliyunOss\

建立.Net Core的Wpf專案

1. 建立名為"demoForWpfCore"的Wpf專案

dotnet new wpf -o demoForWpfCore -f net5.0

2. 新增"demoForWpfCore"到解決方案

dotnet sln add .\demoForWpfCore\demoForWpfCore.csproj

3. 切換到"demoForWpfCore"目錄

cd .\demoForWpfCore\

4. 執行"demoForWpfCore"專案

dotnet watch run

.Net Core的WPF專案安裝Aliyun.OSS.SDK包

https://www.nuget.org/packages/Aliyun.OSS.SDK.NetCore

a. 命令列安裝"Aliyun.OSS.SDK.NetCore"

dotnet add package Aliyun.OSS.SDK.NetCore

b. 或者專案右鍵Nuget包管理,通過視覺化介面安裝"Aliyun.OSS.SDK.NetCore"

c. 安裝之前,Bin目錄結構

d. 安裝之後,Bin目錄結構

發現,新增了Microsoft.Web.WebView2.Core.dllMicrosoft.Web.WebView2.WinForms.dllMicrosoft.Web.WebView2.Wpf.dll這三個檔案。

e. 安裝之後,執行效果

f. 命令列開啟專案位置

explorer.exe .