Biu.Moe 上传 API 文档备份

作业部落由于一些原因暂停服务,因此先把接口文档挪到自己博客上。

用户需要在“个人资料管理”生成一个密钥用于访问 API。
上传需要两个步骤,首先向 Biu 告知歌曲文件相关资料,系统初审通过之后发放 token 用于向七牛(Biu 上传所使用的中转服务商)上传文件。
总共需要两个 POST 操作,采用标准表单提交。

第一步:上报文件资料

所需参数:

key 说明
uid 用户的 UID,在密钥管理界面
filemd5 文件的 MD5 Hash
title 歌曲标题
singer 歌手名称
album 专辑名称
remark 备注
sign 签名
type1 分类,整数型,1动画 2Galgame 3偶像 4东方 5V家 6同人
type2 类型,整数型,1原唱 2伴奏 3纯音乐 4翻唱
force 首次调用不传此参数,系统会判断是否撞车。如果返回的资料没有撞车,可以传入1强制撞上去

其它参数应该不需要介绍,签名的方法为拼接uid、filemd5、title、singer、album、remark、用户密钥(\$key)之后进行一次 MD5 运算。例:
$sign = md5($uid . $filemd5 . $title . $singer . $album . $remark . $key);
以上参数 POST 到 https://biu.moe/Api/createSong

系统会返回 JSON 格式的数据,字段如下:

key 说明
success Bool 值状态,true 成功,false 失败
token 七牛上传令牌,成功才会有。有效期是从申请起 24 小时内
error_code 错误码,失败才会有,1. sign 签名校检失败,2.系统检测疑似撞车,3.未通过审核的歌曲超过 100 首,请先进入网站『我上传的音乐』删除一部分未通过的文件,4.参数不齐,至少歌曲名不能为空。5.服务器已存在该文件(撞 MD5)。6.服务器数据库异常。7.暂时关闭上传功能。8.分类或者类型错误。
result 撞车而且force不等于1才会有,是一串数组结果,字段分别如下(key 采用 PHP 数组写法):

$result[]['sid']:歌曲ID
$result[]['title']:歌曲标题
$result[]['singer']:歌手名
$result[]['album']:专辑名
$result[]['level']:等级 1 无损 2 高音质AAC 3 高音质MP3 4 渣音质MP3
$result[]['score']:撞车可能性评分,分数从2-不知道最大多少

第二步:上传至七牛

目标地址 https://upload.qbox.me/ ,字段如下:

key 说明
file 文件本体
key 文件的 MD5 Hash
x:md5 文件的 MD5 Hash,注意!这个参数的 Key 有一个符号:
token 上传令牌,就是上一步拿到的那一大串玩意儿

上传进度啊速度啊什么的自己想办法捕获吧,完成之后判断返回的 HTTP 状态码,200 表示成功,通常不会失败。
七牛支持分块上传断点续传,具体方法可参考七牛文档。
API 使用有疑问可联系 i@acg.ac

Biu.Moe 上传 API 文档备份 没有评论

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据