上传下载多媒体文件
目录 |
上传下载多媒体文件
公众号在使用接口时,对多媒体文件、多媒体消息的获取和调用等操作,是通过media_id来进行的。通过本接口,公众号可以上传或下载多媒体文件。
文件上传接口
mss/media_upload
URL
http://upload.api.weibo.com/2/mss/media_upload.json
支持格式
JSON
HTTP请求方式
POST
是否需要登录
是
关于登录授权,参见 如何登录授权
接口请求参数
参数 | 必选 | 类型 | 说明 |
---|---|---|---|
source | true | string | 申请应用时分配的AppKey,调用接口时候代表应用的唯一身份。(采用OAuth授权方式不需要此参数) |
type | true | string | 媒体文件类型,分别有图片(image)、语音(voice)、视频(video)和缩略图(thumb) |
media | true | form-data中媒体文件标识,有filename、filelength、content-type等信息 |
相关约束
- 1、必须用Multipart/form-data方式
使用curl命令,用FORM表单方式上传一个多媒体文件:
curl -H "Authorization:OAuth2 USER_ACCESS_TOKEN" -F "media=@test.jpg"
“http://upload.api.weibo.com/2/mss/media_upload.json?type=TYPE”
- 2、上传的多媒体文件有格式和大小限制,如下:
• 图片(image):1MB,支持bmp,jpg,tiff,gif,pcx,tga,exif,fpx,svg,psd,cdr,pcd,dxf,ufo,eps,ai,png,raw格式
• 语音(voice):1MB,支持AMR\MP3格式
• 视频(video):2MB,支持MP4格式
• 缩略图(thumb):128K,支持bmp,jpg,tiff,gif,pcx,tga,exif,fpx,svg,psd,cdr,pcd,dxf,ufo,eps,ai,png,raw格式
返回结果
正确情况下的返回JSON数据包结果如下:
{ “type":"TYPE", "media_id":"MEDIA_ID", "created_at":123456789 }
参数说明:
参数 | 描述 |
---|---|
type | 媒体文件类型,分别有图片(image)、语音(voice)、视频(video)和缩略图(thumb,主要用于视频与音乐格式的缩略图) |
media_id | 媒体文件上传后,获取时的唯一标识 |
created_at | 媒体文件上传时间戳 |
错误情况下的返回JSON数据包示例如下:
{ "error":"invalid media type", "error_code":20354, "request":"/2/mss/media_upload.json", "http_code":400 }
下载多媒体文件
公众号在使用接口时,对多媒体文件、多媒体消息的获取和调用等操作,是通过media_id来进行的。通过本接口,公众号可以上传或下载多媒体文件。
文件下载接口
mss/msget
URL
http://upload.api.weibo.com/2/mss/media_msget.json
支持格式
JSON
HTTP请求方式
POST
是否需要登录
是
关于登录授权,参见 如何登录授权
接口请求参数
参数 | 必选 | 类型 | 说明 |
---|---|---|---|
source | true | string | 申请应用时分配的AppKey,调用接口时候代表应用的唯一身份。(采用OAuth授权方式不需要此参数) |
media | true | 媒体文件ID |
调用示例
http请求方式: GET http://upload.api.weibo.com/2/mss/media_msget.json?source=xxx&media_id=MEDIA_ID 请求示例(示例为通过curl命令获取多媒体文件) curl -I -G "http://upload.api.weibo.com/2/mss/media_msget.json?source=xxx&media_id=MEDIA_ID"
返回结果
正确情况下返回的HTTP头如下:
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 curl -G "http://upload.api.weibo.com/2/mss/media_msget.json?source=xxx&media_id=MEDIA_ID"
错误情况下的返回JSON数据包示例如下:
{ "request":"\/file\/attachment\/real_url.json", "err_code":3,"err_msg":"file is non-existent" }