网宿云存储会在通知的请求头中,加入Authorization
字段。
格式:
<Accesskey>:<Urlsafe_Base64_Encode(hmac_sha1(NotifyUrlWithOutQuery+"\n"+NotifyBody,SecretKey))>
注:
1.NotifyBody为接收到的通知内容;
2.网宿云存储随机选取用户下的任一一组有效AK、SK生成鉴权头部Authorization的值。鉴权过程中,需记录所有AK、SK组,用其中一组正确匹配的密钥串进行头部鉴定。
设置通知地址NotifyUrl后,该地址会获取到的一个经过URL安全的Base64编码的json
格式的NotifyBody信息,该信息即持久化处理结果。
注:接收预处理结果通知的地址,必须是公网URL地址,能正常响应HTTP/1.1 200 OK,若有空格等特殊字符,需要进行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": "<bucket:key string>",
"url": "<url string>",
"duration": "<duration double>",
"bit_rate": "<bit_rate string>",
"resolution": "<resolution string>",
"detail": [
{
"fsize": "<fsize int>",
"tssize":"<tssize int>",
"hash": "<hash string>",
"key": "<bucket: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 值,格式为bucketName:key |
url | string | 资源的访问路径 |
duration | double | 转码输出的视频时长 |
bit_rate | string | 转码输出的视频码率 |
resolution | string | 转码输出的视频分辨率 |
detail | array | 输出文件为多个时,每一个数据文件的具体信息 |
fsize | int | 处理后的文件大小。若输出视频格式为m3u8格式时,这个字段表示m3u8文件的大小 |
tssize | int | 输出视频格式为m3u8格式时,表示ts的总大小;若输出视频格式非m3u8格式,则该字段为0 |
hash | string | 处理结果的hash 值 |
key | string | 处理结果的key 值,格式为bucketName:key |
url | string | 资源的访问路径url |
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,
"tssize":1024,
"hash": "FlWvHsc-CK6miygKCcLjCaQ5csNO",
"key": "chenqltesttwo:aaa.flv",
"url": "http://chenqltesttwo.com/aaa.flv",
"duration": 198.083,
"bit_rate": "1288025",
"resolution": "1280X720",
}
]
}
]
}