COS数据工作流+云函数最佳实践 - 文件哈希值计算
01 文件哈希值是什么?
文件哈希值,即文件内容的HASH值。是通过对文件内容进行加密运算得到的一组二进制值,主要用途是用于文件校验或签名。正是因为这样的特点,它常常用来判断两个文件是否相同。
COS 文件上传下载场景下,数据传输过程可能会出现错误,哈希值可用于对比确认已上传到 COS 的文件与本地文件的一致性。
02 用户痛点
COS 对象只提供 CRC64 校验码:由于对象存储的特殊性,COS 存储的对象,目前只提供 CRC64 校验值。
自定义计算哈希值有开发成本:有的开发者需要 MD5、SHA1、SHA256 等校验值,需要自行实现哈希计算过程。
03 解决方案
COS工作流+云函数,自定义计算
利用数据工作流+云函数新特性,COS 为开发者提供了文件哈希值计算模板。用户可轻松实现自定义计算 COS 文件哈希值函数。

方案优势:
可视化操作:一键配置,简化开发流程,无需编码工作,大幅提升研发效率;
多样化选择:支持 MD5 、SHA1 、SHA256、CRC64,满足各场景用户需求;
自动化执行:文件上传 COS 后,即刻触发工作流开始计算校验码;
04 配置步骤
1.到 COS 控制台存储桶详情,创建工作流,可以自定义过滤后缀过滤规则,创建自定义函数节点。

2.在函数节点弹窗里,点击新建函数,浏览器新标签会打开 SCF 的创建云函数的页面。

3.创建云函数
A. 选择“计算COS对象的哈希值”模板;
B. 配置足够的内存、执行超时时间;
C. 该函数模板支持两个环境变量;
hashTypeList 指定要计算的算法,可选,默认["crc64","md5", "sha1", "sha256"]
caseType 指定哈希值大小写,可选默认 lowercase,可以传入 uppercase
D. 启用权限配置,绑定包含当前存储桶读写权限的角色,创建运行角色请看文档;
E. 点击完成;


如需新建运行角色,可以选择“云函数”作为角色载体,配置 QcloudCOSFullAccess权限,或新建角色自行绑定只包含所需存储桶度权限的桶写权限。


4.回到刚才工作流的页面,选中刚创建的函数。并保存工作流。

5.上传文件,查看工作流处理成功后,可以看到上传的文件已成功添加多个哈希头部。

05 结语
更多自定义处理能力,等你来实现!
如果您有使用 COS 工作流 + Serverless 云函数开发更多有趣功能的想法,请点击阅读全文领取更多福利!关于更多COS工作流及云函数请前往:https://cloud.tencent.com/act/pro/cos_scf?from=14775
COS数据工作流+云函数最佳实践 - 文件哈希值计算的更多相关文章
- 探索云数据库最佳实践 阿里云开发者大会数据库专场邀你一起Code up!
盛夏.魔都.科技 三者在一起有什么惊喜? 7月24日,阿里云峰会·上海——开发者大会将在上海世博中心盛大启程,与未来世界的开发者们分享数据库.云原生.开源大数据等领域的技术干货,共同探讨前沿科技趋势, ...
- 微信小程序开发 -- 通过云函数下载任意文件
微信小程序开发 -- 通过云函数下载任意文件 1.云开发介绍 微信小程序开发者众所周知,小程序开发拥有许多限制,当我还是一个菜鸟入门的时候,第一关就卡在了没有备案域名的HTTP请求上面,那时候云开 ...
- “行业客户云原生最佳实践日” 亮相KubeCon上海
2018年11月13日至15日,由CNCF主办的KubeCon + CloudNativeCon将首次登陆中国上海,这是全球范围内规模最大的Kubernetes和云原生技术盛会. 唯一聚焦客户实践的分 ...
- 小程序云开发--云函数上传文件或图片 base64
云函数开发遇到的问题 在微信云开发环境当中,普通的用户并没有往云存储内写入文件的权限 所以普通用户想要使用wx.cloud.uploadFile显然是不现实的 但是我们同时也知道,云函数是后台服务端, ...
- Atitit.软件开发概念说明--io系统区--特殊文件名称保存最佳实践文件名称编码...filenameEncode
Atitit.软件开发概念说明--io系统区--特殊文件名称保存最佳实践文件名称编码...filenameEncode 不个网页title保存成个个文件的时候儿有无效字符的问题... 通常两个处理方式 ...
- 基于AngularJS的前端云组件最佳实践
AngularJS是google设计和开发的一套前端开发框架,他能帮助开发人员更便捷地进行前端开发.AngularJS是为了克服HTML在构建应用上的不足而设计的,它非常全面且简单易学习,因此Angu ...
- USB-Blaster驱动安装失败——文件哈希值不在指定目录中
右击此电脑,选择管理,选择设备管理器,更新USB-Blaster驱动出现问题 问题: 文件的哈希值不在指定的目录文件中,如图: 解决办法: Windows键+R→shutdown.exe /r /o ...
- win10下计算文件哈希值的方法
cmd下使用certutil命令 使用方法: certutil -hashfile FILE_NAME ALGORITHM_NAME 支持的加密算法包括:MD2,MD4,MD5,SHA1,SHA256 ...
- 海量大数据大屏分析展示一步到位:DataWorks数据服务对接DataV最佳实践
1. 概述 数据服务(https://ds-cn-shanghai.data.aliyun.com) 是DataWorks产品家族的一员,提供了快速将数据表生成API的能力,通过可视化的向导,一分钟 ...
- 同步mysql数据到ElasticSearch的最佳实践
Elasticsearch是一个实时的分布式搜索和分析引擎.它可以帮助你用前所未有的速度去处理大规模数据.ElasticSearch是一个基于Lucene的搜索服务器.它提供了一个分布式多用户能力的全 ...
随机推荐
- YAML 文件基本语法格式(十四)
一.YAML 文件基本语法格式 前面我们得 Kubernetes 集群已经搭建成功了,现在我们就可以在集群里面来跑我们的应用了.要在集群里面运行我们自己的应用,首先我们需要知道几个概念. 第一个当然就 ...
- 将ASD光谱仪的.asd文件转为文本文件
本文介绍基于ViewSpec Pro软件,将ASD地物光谱仪获取到的.asd格式文件,批量转换为通用的.txt文本格式文件的方法. ASD光谱仪是英国Malvern Panalytical公司 ...
- placement new --特殊的内存分配
placement new 是 C++ 中的一种特殊的内存分配技术,用来在指定的内存地址上直接构造对象.与普通的 new 运算符不同,placement new 并不分配新的内存,而是在已经分配好的内 ...
- 使用hexo进行github博客搭建
1.你必须建一个存储库,这个存储库要和你的github名称一致(不然就会404),如下图: 2.如果是window配置,需要安装git和node.js 3.下载hexo npm config set ...
- iOS关于屏蔽暗黑模式小结
不想适配暗黑模式可以关闭暗黑模式:在xcode12之前的版本Info.plist文件中添加Key:User Interface Style,值类型设置为String,值为Light,就可以不管在什么模 ...
- 王树森Attention与Self-Attention学习笔记
目录 Seq2Seq + Attention Attention的原理 方法一(Used in the original paper) 方法二(more popular,the same to Tra ...
- Kubernetes 边缘节点抓不到监控指标?试试这个方法!
KubeSphere v3.1.0 通过集成 KubeEdge,将节点和资源的管理延伸到了边缘,也是 KubeSphere 正式支持边缘计算的第一个版本. 笔者也第一时间搭建和试用了边缘节点相关的功能 ...
- C240731B
B 游戏类问题 先假设一瓶毒药都不用, 先把治疗的贡献加进答案里面,这样治疗.毒药.攻击的贡献分别是独立的. 如果 \(i\) 位置本来是治疗, 那么用毒药多扣的血是 \(a[i]=(p+r) \ti ...
- “应用程序无法正常启动(0xc000007)”处理办法
前几天使用非静态方式编译了一个程序,在部分系统上运行提示缺少msvcp140.dll,就从VS2019安装目录找了一个同名文件放在了程序同级目录,程序也可以正常运行了.今天重新打开虚拟机,突然就报了这 ...
- 研发LLM模型,如何用数值表示人类自然语言?
上一篇:<人工智能--自然语言处理简介> 序言:人工智能大语言模型(LLM)如何理解人类的自然语言?这个过程的核心在于将文本转化为计算机能处理的数值形式,经过计算,最终达到对语言的理解.起 ...