天天看點

COS資料工作流+雲函數最佳實踐 - 檔案哈希值計算

01 檔案哈希值是什麼?

檔案哈希值,即檔案内容的HASH值。是通過對檔案内容進行加密運算得到的一組二進制值,主要用途是用于檔案校驗或簽名。正是因為這樣的特點,它常常用來判斷兩個檔案是否相同。

COS 檔案上傳下載下傳場景下,資料傳輸過程可能會出現錯誤,哈希值可用于對比确認已上傳到 COS 的檔案與本地檔案的一緻性。

02 使用者痛點

  • COS 對象隻提供 CRC64 校驗碼:由于對象存儲的特殊性,COS 存儲的對象,目前隻提供 CRC64 校驗值。
  • 自定義計算哈希值有開發成本:有的開發者需要 MD5、SHA1、SHA256 等校驗值,需要自行實作哈希計算過程。

03 解決方案

COS工作流+雲函數,自定義計算

利用資料工作流+雲函數新特性,COS 為開發者提供了檔案哈希值計算模闆。使用者可輕松實作自定義計算 COS 檔案哈希值函數。

COS資料工作流+雲函數最佳實踐 - 檔案哈希值計算

方案優勢:

  • 可視化操作:一鍵配置,簡化開發流程,無需編碼工作,大幅提升研發效率;
  • 多樣化選擇:支援 MD5 、SHA1 、SHA256、CRC64,滿足各場景使用者需求;
  • 自動化執行:檔案上傳 COS 後,即刻觸發工作流開始計算校驗碼;

04 配置步驟

1.到 COS 控制台存儲桶詳情,建立工作流,可以自定義過濾字尾過濾規則,建立自定義函數節點。

COS資料工作流+雲函數最佳實踐 - 檔案哈希值計算

2.在函數節點彈窗裡,點選建立函數,浏覽器新标簽會打開 SCF 的建立雲函數的頁面。

COS資料工作流+雲函數最佳實踐 - 檔案哈希值計算

3.建立雲函數

A. 選擇“計算COS對象的哈希值”模闆;

B. 配置足夠的記憶體、執行逾時時間;

C. 該函數模闆支援兩個環境變量;

  • hashTypeList 指定要計算的算法,可選,預設["crc64","md5", "sha1", "sha256"]
  • caseType 指定哈希值大小寫,可選預設 lowercase,可以傳入 uppercase

D. 啟用權限配置,綁定包含目前存儲桶讀寫權限的角色,建立運作角色請看文檔;

E. 點選完成;

COS資料工作流+雲函數最佳實踐 - 檔案哈希值計算
COS資料工作流+雲函數最佳實踐 - 檔案哈希值計算

如需建立運作角色,可以選擇“雲函數”作為角色載體,配置 QcloudCOSFullAccess權限,或建立角色自行綁定隻包含所需存儲桶度權限的桶寫權限。

COS資料工作流+雲函數最佳實踐 - 檔案哈希值計算
COS資料工作流+雲函數最佳實踐 - 檔案哈希值計算

4.回到剛才工作流的頁面,選中剛建立的函數。并儲存工作流。

COS資料工作流+雲函數最佳實踐 - 檔案哈希值計算

5.上傳檔案,檢視工作流處理成功後,可以看到上傳的檔案已成功添加多個哈希頭部。

COS資料工作流+雲函數最佳實踐 - 檔案哈希值計算

05 結語

更多自定義處理能力,等你來實作!

如果您有使用 COS 工作流 + Serverless 雲函數開發更多有趣功能的想法,請點選閱讀全文領取更多福利!關于更多COS工作流及雲函數請前往:https://cloud.tencent.com/act/pro/cos_scf?from=14775

繼續閱讀