云存储微服务接口

接口目录

上传文件

POST /storage/api/upload

该接口为同步接口,上传完成后能马上得到文件 URL

表单参数

参数 描述 取值
file 文件 file
file_name (可选)自定义文件名,需要带上扩展名。默认用上传文件的文件名 string

返回字段

参数 描述 取值
errcode 错误码,1000 为正常 int
msg "OK" 或错误信息 string
id 文件云存储 ID string
url 文件云存储 URL string

返回示例:

{
    "errcode": 1000,
    "msg": "OK",
    "id": "a4b9dnoj",
    "url": "http://example.mudu.tv/a4b9dnoj-example.txt"
}

下载URL上的文件到云存储

POST /storage/api/download_url

该接口为异步接口,调用后马上返回,需要通过查询文件状态来确认是否上传完成

JSON 参数

参数 描述 取值
file_url 文件来源 URL string
file_name (可选)文件名,带扩展名。默认用文件来源 URL 路径的最后一部分 string

返回字段

参数 描述 取值
errcode 错误码,1000 为正常 int
msg "OK" 或错误信息 string
id 文件云存储 ID string

返回示例:

{
    "errcode": 1000,
    "msg": "OK",
    "id": "a4b9dnoj"
}

获取文件列表

GET /storage/api/list

URL 参数

参数 描述 取值
page 页数,默认 1 int
page_size 每页个数,默认 15 int

返回字段

参数 描述 取值
errcode 错误码,1000 为正常 int
msg "OK" 或错误信息 string
count 文件总个数 int
files 云存储文件列表 object array
files.id 文件云储存 ID string
files.status 文件状态(见下) int
files.source_type 来源类型(url 或 file) string
files.public_url 文件 URL string
files.file_name 文件名 string
files.file_size 文件大小(字节数) int

文件状态表:

意义
0 初始状态
1 上传成功(这是最终状态)
2 上传中
3 上传失败
4 已删除

返回示例:

{
    "errcode": 1000,
    "msg": "OK",
    "count": 234,
    "files": [{
        "id": "dok80b1y",
        "status": 1,
        "source_type": "url",
        "public_url": "http://example.mudu.tv/a4b9dnoj-example.mp4",
        "file_name": "example.mp4",
        "file_size": 68520395
    }]
}

获取文件信息

GET /storage/api/get

URL 参数

参数 描述 取值
id 文件云储存 ID string

返回字段

参数 描述 取值
errcode 错误码,1000 为正常 int
msg "OK" 或错误信息 string
file 云存储文件 object
file.id 文件云存储 ID string
file.status 文件状态(见下) int
file.source_type 来源类型(url 或 file) string
file.public_url 文件 URL string
file.file_name 文件名 string
file.file_size 文件大小(字节数) int

文件状态表:

意义
0 初始状态
1 上传成功(这是最终状态)
2 上传中
3 上传失败
4 已删除

返回示例:

{
    "errcode": 1000,
    "msg": "OK",
    "file": {
        "id": "dok80b1y",
        "status": 1,
        "source_type": "url",
        "public_url": "http://example.mudu.tv/a4b9dnoj-example.mp4",
        "file_name": "example.mp4",
        "file_size": 68520395
    }
}

删除文件信息

POST /storage/api/delete

URL 参数

参数 描述 取值
id 文件云储存 ID string

返回字段

参数 描述 取值
errcode 错误码,1000 为正常 int
msg "OK" 或错误信息 string

返回示例:

{
    "errcode": 1000,
    "msg": "OK"
}

初始化分片任务

POST /storage/api/init_upload_part

注意:获取到的 upload_id 用于后面 /upload_part, /complete_upload_part/abort_upload_partid 字段

JSON 参数

参数 描述 取值
file_name (必填)待上传的文件名,带扩展名 string

返回字段

参数 描述 取值
errcode 错误码,1000 为正常 int
msg "OK" 或错误信息 string
upload_id 分片上传任务 ID string

返回示例:

{
    "errcode": 1000,
    "msg": "OK",
    "upload_id": "mok80b1y"
}

上传分片文件

POST /storage/api/upload_part

URL 参数

参数 描述 取值
id 分片上传任务 ID string

表单参数:

参数 描述 取值
file 文件 file
part_number 分片号,从 1 开始 int

返回字段

参数 描述 取值
errcode 错误码,1000 为正常 int
msg "OK" 或错误信息 string

返回示例:

{
    "errcode": 1000,
    "msg": "OK"
}

完成分片上传

POST /storage/api/complete_upload_part

URL 参数

参数 描述 取值
id 分片上传任务 ID string

JSON 参数:

参数 描述 取值
parts_count 总分片数,用于检查文件完整性 int

返回字段

参数 描述 取值
errcode 错误码,1000 为正常 int
msg "OK" 或错误信息 string
id 文件云储存 ID string

返回示例:

{
    "errcode": 1000,
    "msg": "OK",
    "id": "dvoneo63"
}

取消分片上传

POST /storage/api/abort_upload_part

URL 参数

参数 描述 取值
id 分片上传任务 ID string

返回字段

参数 描述 取值
errcode 错误码,1000 为正常 int
msg "OK" 或错误信息 string

返回示例:

{
    "errcode": 1000,
    "msg": "OK"
}

获取分片上传任务

GET /storage/api/get_upload_part_task

URL 参数

参数 描述 取值
id 分片上传任务 ID string

返回字段

参数 描述 取值
errcode 错误码,1000 为正常 int
msg "OK" 或错误信息 string
task 分片上传任务 object
task.upload_id 分片上传任务 ID string
task.status 分片任务上传状态(定义见下表) int
task.uploaded_parts 已上传的分片号(从 1 开始) int array
task.file_name 文件名 string

分片任务状态表:

意义
0 初始状态,上传中
1 上传成功(这是最终状态)
2 已取消

返回示例:

{
    "errcode": 1000,
    "msg": "OK",
    "task": {
        "upload_id": "mok80b1y",
        "status": 0,
        "uploaded_parts": [1, 2, 4, 5, 7],
        "file_name": "example.mp4"
    }
}

错误码

错误代码 使用模块 错误描述
2301 存储 参数不合法
2302 存储 上传失败:分片缺失
2303 存储 无法从提供的 URL 获取文件
2304 存储 不是有效的 m3u8 文件
2305 存储 UploadID 无效
2306 存储 找不到该 user ID 对应的 token,请登录后重试
2311 存储 内部错误:创建临时文件失败
2312 存储 内部错误:修改临时文件失败
2313 存储 内部错误:删除临时文件失败
2314 存储 内部错误:无法将文件上传至云存储
2315 存储 内部错误:无法获取云存储上的对象地址
2316 存储 内部错误:无法将文件上传至云存储
2317 存储 内部错误:解析 HTTP 返回失败
2321 存储 插入文件数据失败
2322 存储 查询单个文件数据失败
2323 存储 修改文件数据失败
2324 存储 删除文件数据失败
2325 存储 查询文件数据列表失败
2331 存储 插入文件片段任务数据失败
2332 存储 查询单个文件片段任务数据失败
2333 存储 修改文件片段任务数据失败
2334 存储 删除文件片段任务数据失败
2341 存储 保存文件片段数据失败

results matching ""

    No results matching ""