更新时间:2025-08-18 15:32:53
本章介绍上传文件预处理(如在上传凭证携带persistentOps指令)任务的通知说明。
对象存储会在通知的请求头中添加一个Authorization字段。
格式
<Accesskey>:<Urlsafe_Base64_Encode(hmac_sha1(NotifyUrl+"\n"+Response,SecretKey))>
注意:
- Response是接收到的通知内容;
- 对象存储会随机选择用户下任何一组有效的AK和SK来生成认证头
Authorization的值。在认证过程中,需记录所有AK和SK进行匹配,并用正确匹配的某一组密钥字符串进行头认证。
在设置通知地址NotifyUrl之后,该地址将会以JSON格式接收URL-Safe Base64 编码的Response信息。此消息即为持久化处理结果。
注意:接收预处理结果通知的地址必须是能够正常响应HTTP/1.1 200 OK的公网URL地址。如有空格等特殊字符需进行Url Encode编码。
通知内容格式:
{
"id": "<id string>",
"code": "<code int>",
"desc": "<desc string>",
"separate":"<separate int>",
"inputkey":"<inputkey string>",
"inputbucket":"<inputbucket string>" ,
"inputfsize":"<inputfsize int>"
"items": [
{
"cmd": "<cmd string>",
"code": "<code string>",
"costTime": "<costTime int>",
"desc": "<desc string>",
"error": "<error string>",
"fsize": "<fsize int>",
"hash": "<hash string>",
"key": "<key string>",
"url": "<url string>",
"duration": "<duration double>",
"bit_rate": "<bit_rate string>",
"resolution": "<resolution string>",
"detail": [
{
"fsize": "<fsize int>",
"hash": "<hash string>",
"key": "<key string>",
"url": "<url string>",
"duration": "<duration double>",
"bit_rate": "<bit_rate string>",
"resolution": "<resolution string>"
}
]
}
]
}
对应字段说明:
| 字段名称 | 类型 | 描述 |
|---|---|---|
| id | string | 任务唯一标识。上传预处理或持久化处理接口返回的persistentId。 |
| code | int | 通知进度的状态码。 1 是单独通知,任务处理进行中; 2 是单独通知,任务处理失败; 3 通知成功。 |
| desc | string | 与状态码对应的详细描述。 |
| separate | string | 单独通知选项。 0 表示一次性通知 1 表示单独通知。 |
| inputkey | string | 原始文件名。 |
| inputbucket | string | 原始文件的存储空间。 |
| inputfsize | int | 原始文件大小。 |
| items | array | 每个操作的状态信息。如果处理请求包含多个操作,items将包含多条信息。 |
| cmd | string | 操作命令(ops)。 |
| code | string | 处理结果的状态码。 2 处理失败; 3 处理成功。 |
| costTime | int | 转码耗时,非特殊场景默认为0。 |
| desc | string | 与状态码对应的详细描述。 |
| error | string | 如果处理失败,该字段将列出具体原因。 |
| fsize | int | 处理后的文件大小。 |
| hash | string | 处理结果的hash值。 |
| key | string | 处理结果的key值。 |
| url | string | 资源的访问路径。 |
| duration | double | 转码输出的视频时长。 |
| bit_rate | string | 转码输出的视频比特率。 |
| resolution | string | 转码输出的视频分辨率。 |
| detail | array | 当输出多个文件时,每个数据文件的具体信息。 |
| fsize | int | 处理后的文件大小。 |
| hash | string | 处理结果的hash值。 |
| key | string | 处理结果的key值。 |
| url | string | 资源的访问路径。 |
| duration | double | 转码输出的视频时长。 |
| bit_rate | string | 转码输出的视频比特率。 |
| resolution | string | 转码输出的视频分辨率。 |
{
{
"id":"2c90802745ee87870145ef1430f90006",
"code":3,
"desc": "operate ["avthumb/flv"] is finish",
"separate":0,
"inputkey":"aaa.flv",
"inputbucket":"chenqltesttwo",
"inputfsize":20000,
"items":[
{
"cmd":"avthumb/flv",
"code":"3",
"costTime": 0,
"desc":"finish",
"error":null,
"fsize":20000,
"hash":"FlWvHsc-CK6miygKCcLjCaQ5csNO",
"key":"chenqltesttwo:aaa.flv",
"url":"http://chenqltesttwo.com/aaa.flv",
"duration": 198.083,
"bit_rate": "1288025",
"resolution": "1280X720",
"detail": [
{
"fsize": 20000,
"hash": "FlWvHsc-CK6miygKCcLjCaQ5csNO",
"key": "chenqltesttwo:aaa.flv",
"url": "http://chenqltesttwo.com/aaa.flv",
"duration": 198.083,
"bit_rate": "1288025",
"resolution": "1280X720",
}
]
}
]
}
}