上传素材到素材库
素材库接入介绍
素材库接入后,小程序关联的up主拥有在发布视频或动态时,可添加特殊卡片的能力。可以是商品卡,也可以是不带价格的其它卡片样式。素材同步后,up主在发布内容时可选择相关素材添加。
开发者需要自定义素材内容,以及素材同步给哪一个up主(up主关联的虚拟小程序)。
卡片样式参考:
接口地址
POST https://miniapp.bilibili.com/api/materials
请用form-data
形式POST
此接口,素材图片的name
属性应设置为file
http头片段
Content-Disposition: form-data; name="file"; filename="123456.jpg"
参数说明
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
appId | string | 是 | 商家主小程序id |
mid | int | 是 | 商家账号id 可以在用户账号资料中查看 |
file | file | 是 | 图片文件 图片比例1:1,图片格式必须为:png,jpeg,jpg,gif不可大于2M;建议使用png格式图片,以保持最佳效果 |
fileMD5 | string | 是 | 素材图片的MD5字符串 |
title | string | 是 | 标题 最多不可超过90个字,建议20字左右 |
subtitle | string | 否 | 副标题 商品或活动的描述,最多不超过150个字,建议20字左右 |
price | int | 否 | 价格以分为单位(传此值,说明是商品,不传则是活动等) |
url | string | 是 | 该素材的跳转链接 小程序指定跳转链接 如:/pages/detail?itemid=111111 |
shopMaterialId | int | 是 | 商家自定义素材id |
ts | string | 是 | 当前时间戳,单位毫秒 |
sign | string | 是 | 签名 |
签名
appId
,fileMD5
等所有传递参数按照字典顺序排列,所有参数组合成query string
形式,直接拼接appSecret(系统提供),进行md5 得到sign,放入请求参数。file
不参与签名。
sign = md5( key1=urlencode(value1)&key2=urlencode(value2)&...&keyN=urlencode(valueN){appSecret} )
// PHP
sign = md5( key1=rawurlencode(value1)&key2=rawurlencode(value2)&...&keyN=rawurlencode(valueN){appSecret} )
返回示例
// 成功
{
"code": 0,
"message": "success",
"data": 10001 // 素材id
}
}
// 失败
{
"code": 1, // 错误码,所有非0都是失败
"message": "...", // 错误信息
"data": null
}