素材管理
主动调用通用参数请参阅全局说明
SDK示例:https://github.com/youduim/youdu-sdk-java
支持素材上传、下载、查询
上传素材文件
POST请求URL:http://[SERVER:7080]/cgi/media/upload?accessToken=$accessToken
[SERVER:7080]指连接的服务器地址,如:http://[SERVER:7080]/cgi/media/upload?accessToken=$accessToken
参数 | 必须 | 说明 |
---|---|---|
请求格式 | 是 | 采用multipart-form方式上传 |
buin | 是 | 企业号。表单值 |
appId | 是 | 应用AppId。表单值 |
encrypt | 是 | 加密消息体。表单值 |
file | 是 | 素材文件。表单值,任意类型的素材统一用file作为表单名,加密后上传,加密方式详见加解密说明 |
encrypt加密前数据格式:
{
"type": "$media_type",
"name": "$media_name"
}
参数 | 必须 | 说明 |
---|---|---|
type | 是 | 素材类型。image代表图片、file代表普通文件、voice代表语音、video代表视频 |
name | 是 | 素材名称 |
结果返回
{
"mediaId": "$media_id"
}
参数 | 说明 |
---|---|
mediaId | 素材媒体文件ID |
下载素材文件
POST请求URL:http://[SERVER:7080]/cgi/media/get?accessToken=$accessToken
[SERVER:7080]指连接的服务器地址,如:http://[SERVER:7080]/cgi/media/get?accessToken=$accessToken
请求数据格式
{
"mediaId": "$media_id"
}
参数 | 必须 | 说明 |
---|---|---|
mediaId | 是 | 素材文件ID |
成功时结果返回(特殊,非json格式)
body里为文件二进制数据
{
HTTP/1.1 200 OK
Connection: close
Content-Type: image/jpeg
Content-disposition: attachment; filename="MEDIA_ID.jpg"
Date: Sun, 06 Jan 2013 10:20:18 GMT
Cache-Control: no-cache, must-revalidate
Content-Length: 339721
encrypt: "$encrypt" //encrypt为自定义的参数,在header中返回
//以下为http body,是加密后的文件二进制数据
media_file_bytes
}
encrypt 解密后数据格式为:
{
"name": "$media_name",
"size": $media_size
}
参数 | 说明 |
---|---|
name | 文件名称 |
size | 文件大小 |
失败时返回
全局错误码
查询素材文件信息
POST请求URL:http://[SERVER:7080]/cgi/media/search?accessToken=$accessToken
[SERVER:7080]指连接的服务器地址,如:http://[SERVER:7080]/cgi/media/search?accessToken=$accessToken
请求数据格式为:
{
"mediaId": "$media_id"
}
参数 | 必须 | 说明 |
---|---|---|
mediaId | 是 | 素材文件ID |
返回:
{
"name": "file_name",
"size": 2048
}
参数 | 说明 |
---|---|
name | 素材文件名称 |
size | 素材文件大小 |