tencent cloud

$0 14-Day TrialExperience EdgeOne for acceleration and security protection!

文档反馈

对象存储

提交哈希值计算任务

最后更新时间:2023-12-30 10:42:53

功能描述

以提交任务的方式进行文件哈希值计算,异步返回计算得到的哈希值,该接口属于 POST 请求。

费用说明

调用接口会产生 哈希值计算费用COS 读请求费用
如果文件为 COS 上的低频存储类型,调用会产生 COS 低频数据取回费用
不支持计算 COS 上的归档存储类型和深度归档存储类型的文件哈希值,如果需要计算此类型文件的哈希值,请先 恢复归档文件

限制说明

文件大小支持:支持计算小于 50 GB 大小的文件。
调用接口需携带签名,具体规则请参见 请求签名 文档。
本接口当前支持以下地域:北京、上海、广州、成都、中国香港、新加坡、硅谷。

请求

请求示例

POST /file_jobs HTTP/1.1
Host: <BucketName-APPID>.ci.<Region>.myqcloud.com
Date: <GMT Date>
Authorization: <Auth String>
Content-Length: <length>
Content-Type: application/xml

<body>
说明
Authorization: Auth String(详情请参见 请求签名 文档)。
通过子账号使用时,需要授予相关的权限,详情请参见 授权粒度详情 文档。

请求头

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

请求体

该请求操作的实现需要有如下请求体。
<Request>
<Tag>FileHashCode</Tag>
<Input>
<Object>input/test.mp4</Object>
</Input>
<Operation>
<FileHashCodeConfig>
<Type>MD5</Type>
<AddToHeader>true</AddToHeader>
</FileHashCodeConfig>
<UserData>This is my data.</UserData>
</Operation>
<QueueId>p2911917386e148639319e13c285cc774</QueueId>
<CallBack>http://test.test.com</CallBack>
<CallBackFormat>JSON<CallBackFormat>
</Request>
具体的数据描述如下:
节点名称(关键字)
父节点
描述
类型
是否必选
Request
保存请求的容器。
Container
Container 类型 Request 的具体数据描述如下:
节点名称(关键字)
父节点
描述
类型
是否必选
Tag
Request
表示任务的类型,哈希值计算默认为:FileHashCode。
String
Input
Request
包含待操作的文件信息。
Container
Operation
Request
包含哈希值计算的处理规则。
Container
QueueId
Request
任务所在的队列 ID。
String
CallBackFormat
Request
任务回调格式,JSON 或 XML,默认 XML,优先级高于队列的回调格式。
String
CallBackType
Request
任务回调类型,Url 或 TDMQ,默认 Url,优先级高于队列的回调类型。
String
CallBack
Request
任务回调的地址,优先级高于队列的回调地址。
String
CallBackMqConfig
Request
任务回调 TDMQ 配置,当 CallBackType 为 TDMQ 时必填。详情见 CallBackMqConfig
Container
Container 类型 Input 的具体数据描述如下:
节点名称(关键字)
父节点
描述
类型
是否必选
Object
Request.Input
文件名,取值为文件在当前存储桶中的完整名称。
String
Container 类型 Operation 的具体数据描述如下:
节点名称(关键字)
父节点
描述
类型
是否必选
FileHashCodeConfig
Request.Operation
指定哈希值计算的处理规则。
Container
UserData
Request.Operation
透传用户信息, 可打印的 ASCII 码, 长度不超过1024
String
Container 类型 FileHashCodeConfig 的具体数据描述如下:
节点名称(关键字)
父节点
描述
类型
是否必选
Type
Request.Operation.FileHashCodeConfig
哈希值的算法类型,有效值:MD5、SHA1、SHA256。
String
AddToHeader
Request.Operation.FileHashCodeConfig
是否将计算得到的哈希值添加至文件自定义header, 有效值:true、false,默认值为 false。自定义header根据Type的值变化,例如Type值为MD5时,自定义header为 x-cos-meta-md5。
String

响应

响应头

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

响应体

该响应体返回为 application/xml 数据,包含完整节点数据的内容展示如下:
<Response>
<JobsDetail>
<Code>Success</Code>
<Message/>
<JobId>f93984788066911ed89ed352d4d9d2084</JobId>
<State>Submitted</State>
<CreationTime>2022-07-18T15:16:43+0800</CreationTime>
<EndTime>-</EndTime>
<StartTime>-</StartTime>
<QueueId>p2911917386e148639319e13c285cc774</QueueId>
<Tag>FileHashCode</Tag>
<Input>
<BucketId>test-1234567890</BucketId>
<Object>input/test.mp4</Object>
<Region>ap-chongqing</Region>
</Input>
<Operation>
<FileHashCodeConfig>
<Type>MD5</Type>
<AddToHeader>true</AddToHeader>
</FileHashCodeConfig>
<UserData>This is my data.</UserData>
</Operation>
</JobsDetail>
</Response>
具体的数据内容如下:
节点名称(关键字)
父节点
描述
类型
Response
保存结果的容器。
Container
Container 节点 Response 的内容:
节点名称(关键字)
父节点
描述
类型
JobsDetail
Response
任务的详细信息。
Container
Container 节点 JobsDetail 的内容:
节点名称(关键字)
父节点
描述
类型
Code
Response.JobsDetail
错误码,只有 State 为 Failed 时有意义。
String
Message
Response.JobsDetail
错误描述,只有 State 为 Failed 时有意义。
String
JobId
Response.JobsDetail
新创建任务的 ID。
String
Tag
Response.JobsDetail
表示任务的类型,哈希值计算默认为:FileHashCode。
String
State
Response.JobsDetail
任务的状态,为 Submitted(已提交)、Running(进行中)、Success(成功)、Failed(失败)、Pause(已暂停)、Cancel(已取消) 其中一个
String
CreationTime
Response.JobsDetail
任务的创建时间。
String
StartTime
Response.JobsDetail
任务的开始时间。
String
EndTime
Response.JobsDetail
任务的结束时间。
String
QueueId
Response.JobsDetail
任务所属的队列 ID。
String
Input
Response.JobsDetail
被计算哈希值的文件信息。
Container
Operation
Response.JobsDetail
哈希值计算的处理规则。
Container
Container 节点 Input 的内容:
节点名称(关键字)
父节点
描述
类型
Region
Response.JobsDetail.Input
存储桶所在地域。
String
Bucket
Response.JobsDetail.Input
文件所在的存储桶。
String
Object
Response.JobsDetail.Input
被计算哈希值的文件名。
String
Container 节点 Operation 的内容:
节点名称(关键字)
父节点
描述
类型
UserData
Response.JobsDetail.Operation
透传用户信息。
String
FileHashCodeConfig
Response.JobsDetail.Operation
同请求中的 Request.Operation.FileHashCodeConfig。
Container
FileHashCodeResult
Response.JobsDetail.Operation
计算得到的文件 hash 值信息,任务未完成时不返回。
Container
Container 节点 FileHashCodeResult 的内容:
节点名称(关键字)
父节点
描述
类型
MD5
Response.JobsDetail.Operation.FileHashCodeResult
MD5 计算结果。
String
SHA1
Response.JobsDetail.Operation.FileHashCodeResult
SHA1 计算结果。
String
SHA256
Response.JobsDetail.Operation.FileHashCodeResult
SHA256 计算结果。
String
FileSize
Response.JobsDetail.Operation.FileHashCodeResult
文件大小。
Int
LastModified
Response.JobsDetail.Operation.FileHashCodeResult
文件的最后修改时间。
String
Etag
Response.JobsDetail.Operation.FileHashCodeResult
文件的Etag。
String

错误码

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

实际案例

请求

POST /file_jobs HTTP/1.1
Authorization:q-sign-algorithm=sha1&q-ak=AKIDZfbOAo7cllgPvF9cXFrJD0a1ICvR****&q-sign-time=1497530202;1497610202&q-key-time=1497530202;1497610202&q-header-list=&q-url-param-list=&q-signature=28e9a4986df11bed0255e97ff90500557e0ea057
Host:test-1234567890.ci.ap-chongqing.myqcloud.com
Content-Length: 166
Content-Type: application/xml

<Request>
<Tag>FileHashCode</Tag>
<Input>
<Object>input/test.mp4</Object>
</Input>
<Operation>
<FileHashCodeConfig>
<Type>MD5</Type>
<AddToHeader>true</AddToHeader>
</FileHashCodeConfig>
<UserData>This is my data.</UserData>
</Operation>
<QueueId>p2911917386e148639319e13c285cc774</QueueId>
<CallBack>http://callback.demo.com</CallBack>
<CallBackFormat>JSON<CallBackFormat>
</Request>

响应

HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: 230
Connection: keep-alive
Date: Mon, 18 Jul 2022 19:37:29 GMT
Server: tencent-ci
x-ci-request-id: NjMxMDJhYTNfMThhYTk0MGFfYmU1OV8zZjc=

<Response>
<JobsDetail>
<Code>Success</Code>
<Message/>
<JobId>f93984788066911ed89ed352d4d9d2084</JobId>
<State>Submitted</State>
<CreationTime>2022-07-18T15:16:43+0800</CreationTime>
<EndTime>-</EndTime>
<StartTime>-</StartTime>
<QueueId>p2911917386e148639319e13c285cc774</QueueId>
<Tag>FileHashCode</Tag>
<Input>
<BucketId>test-1234567890</BucketId>
<Object>input/deer.jpg</Object>
<Region>ap-chongqing</Region>
</Input>
<Operation>
<FileHashCodeConfig>
<Type>MD5</Type>
<AddToHeader>true</AddToHeader>
</FileHashCodeConfig>
<UserData>This is my data.</UserData>
</Operation>
</JobsDetail>
</Response>


产品类别

联系我们

联系我们,为您的业务提供专属服务。

技术支持

如果你想寻求进一步的帮助,通过工单与我们进行联络。我们提供7x24的工单服务。

7x24 电话支持
Hong Kong, China
+852 800 906 020 (Toll Free)
United States
+1 844 606 0804 (Toll Free)
United Kingdom
+44 808 196 4551 (Toll Free)
Canada
+1 888 605 7930 (Toll Free)
Australia
+61 1300 986 386 (Toll Free)
EdgeOne hotline
+852 300 80699
More local hotlines coming soon