有奖捉虫:云通信与企业服务文档专题,速来> HOT

功能描述

以同步请求的方式进行文件哈希值计算,实时返回计算得到的哈希值,该接口属于 GET 请求。

授权说明

授权策略中 action 设置为 ci:CreateFileProcessJobs 。查看所有 action
子账号使用异步处理接口时,需要授予 cam:passrole 权限,异步处理接口会通过 CAM 的“角色”进行 COS 的资源读写操作,PassRole 权限用于传递角色。

服务开通

使用该功能需提前开通数据万象,并绑定存储桶。详情请参见 绑定存储桶

使用限制

使用该接口时,请先确认相关限制条件。详情请参见 使用限制
不支持处理 COS 上的归档存储类型和深度归档存储类型的文件,如果需要处理此类型文件,请先 恢复归档文件
文件大小:支持计算小于 128 MB 大小的文件,更大文件请使用 哈希值计算异步接口
请求超时时间:10秒。
调用接口需携带签名,具体规则请参见 请求签名 文档。
本接口当前支持以下地域:北京、上海、广州、成都、南京、重庆、中国香港、新加坡、硅谷。

费用说明

调用接口会产生 哈希值计算费用COS 读请求费用
如果文件为 COS 上的低频存储类型,调用会产生 COS 低频数据取回费用



请求

请求示例

GET /<ObjectKey>?ci-process=filehash&type=<type> HTTP/1.1
Host: <BucketName-APPID>.cos.<Region>.myqcloud.com
Date: <GMT Date>
Authorization: <Auth String>
Content-Length: <length>
说明
Authorization: Auth String(详情请参见 请求签名 文档)。
通过子账号使用时,需要授予相关的权限,详情请参见 授权粒度详情 文档。
ObjectKey 为存储桶对象。

请求头

此接口仅使用公共请求头部,详情请参见 公共请求头部 文档。

请求参数

参数说明如下:
节点名称(关键字)
描述
类型
是否必选
ci-process
操作类型,哈希值计算固定为:filehash
String
type
支持的哈希算法类型,有效值:md5、sha1、sha256
String
addtoheader
是否将计算得到的哈希值,自动添加至文件的自定义 header,格式为:x-cos-meta-md5/sha1/sha256;
有效值: true、false,不填则默认为 false
String

请求体

该请求无请求体。

响应

响应头

此接口仅返回公共响应头部,详情请参见 公共响应头部 文档。

响应体

该响应体返回为 application/xml 数据,包含完整节点数据的内容展示如下:
<Response>
<FileHashCodeResult>
<MD5>0fe771ba515b0525552f59290a50c0ef</MD5>
<FileSize>1048576</FileSize>
</FileHashCodeResult>
<Input>
<Bucket>test-1234567890</Bucket>
<Object>wg.txt</Object>
<Region>ap-chongqing</Region>
</Input>
</Response>
具体的数据内容如下:
节点名称(关键字)
父节点
描述
类型
Response
保存结果的容器
Container
Container 节点 Response 的内容:
节点名称(关键字)
父节点
描述
类型
FileHashCodeResult
Response
文件哈希值的结果。
Container
Input
Response
输入文件的基本信息。
Container
Container 节点 FileHashCodeResult 的内容:
节点名称(关键字)
父节点
描述
类型
MD5
Response.FileHashCodeResult
请求时type为 md5 时返回
String
SHA1
Response.FileHashCodeResult
请求时type为 sha1 时返回
String
SHA256
Response.FileHashCodeResult
请求时type为 sha256 时返回
String
FileSize
Response.FileHashCodeResult
文件的大小
Int
LastModified
Response.FileHashCodeResult
对象的最近一次修改的时间
String
Etag
Response.FileHashCodeResult
ETag 全称为 Entity Tag,是对象被创建时标识对象内容的信息标签,可用于检查对象的内容是否发生变化
String
Container 节点 Input 的内容:
节点名称(关键字)
父节点
描述
类型
Region
Response.JobsDetail.Input
存储桶所在地域
String
Bucket
Response.JobsDetail.Input
输入文件所在的存储桶
String
Object
Response.JobsDetail.Input
输入文件在存储桶中的名称
String

错误码

该请求操作无特殊错误信息,常见的错误信息请参见 错误码 文档。

实际案例

请求

GET /for-test.mp4?ci-process=filehash&type=md5 HTTP/1.1
Host: test-1234567890.cos.ap-beijing.myqcloud.com
Authorization: q-sign-algorithm=sha1&q-ak=AKIDWtTCBYjM5OwLB9CAwA1Qb2ThTSUjfG****-sign-time=1484213027;32557109027&q-key-time=1484213027;32557109027&q-header-list=host&q-url-param-list=acl&q-signature=dcc1eb2022b79cb2a780bf062d3a40e120b4****
Content-Length: 0

响应

HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: 666
Connection: keep-alive
Date: Mon, 28 Jun 2022 15:23:12 GMT
Server: tencent-cos
x-cos-request-id: NTg3NzRiMjVfYmRjMzVfMTViMl82ZGZmNw==

<Response>
<FileHashCodeResult>
<MD5>0fe771ba515b0525552f59290a50c0ef</MD5>
<FileSize>1048576</FileSize>
<LastModified>2022-06-27T15:23:12+0800</LastModified>
<Etag>"ee8de918d05640145b18f70f4c3aa602"</Etag>
</FileHashCodeResult>
<Input>
<Bucket>test-1234567890</Bucket>
<Object>wg.txt</Object>
<Region>ap-chongqing</Region>
</Input>
</Response>