+发表新主题
查看: 1522|回复: 0

[代码片段] 微信公众平台上传下载多媒体文件之开发文档详解

[复制链接]

[代码片段] 微信公众平台上传下载多媒体文件之开发文档详解

[复制链接]
小鱼丸 发表于 2014-2-27 16:04:48 浏览:  1522 回复:  0 [显示全部楼层] 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
微信公众号在使用接口时,对多媒体文件、多媒体消息的获取和调用等操作,是通过media_id来进行的。通过本接口,公众号可以上传或下载多媒体文件。但请注意,每个多媒体文件(media_id)会在上传、用户发送到微信服务器3天后自动删除,以节省服务器资源。
一、上传多媒体文件
公众号可调用本接口来上传图片、语音、视频等文件到微信服务器,上传后服务器会返回对应的media_id,公众号此后可根据该media_id来获取多媒体。请注意,media_id是可复用的,调用该接口需http协议。
接口调用请求说明
  1. http请求方式: POST/FORM
  2. http://file.api.weixin.qq.com/cgi-bin/media/upload?access_token=ACCESS_TOKEN&type=TYPE
  3. 调用示例(使用curl命令,用FORM表单方式上传一个多媒体文件):
  4. curl -F media=@test.jpg "http://file.api.weixin.qq.com/cgi-bin/media/upload?access_token=ACCESS_TOKEN&type=TYPE"
复制代码



参数说明
参数是否必须说明
access_token调用接口凭证
type媒体文件类型,分别有图片(image)、语音(voice)、视频(video)和缩略图(thumb)
mediaform-data中媒体文件标识,有filename、filelength、content-type等信息
返回说明
正确情况下的返回JSON数据包结果如下:
  1. {"type":"TYPE","media_id":"MEDIA_ID","created_at":123456789}
复制代码


参数描述
type媒体文件类型,分别有图片(image)、语音(voice)、视频(video)和缩略图(thumb,主要用于视频与音乐格式的缩略图)
media_id媒体文件上传后,获取时的唯一标识
created_at媒体文件上传时间戳
错误情况下的返回JSON数据包示例如下(示例为无效媒体类型错误):
  1. {"errcode":40004,"errmsg":"invalid media type"}
复制代码



注意事项
上传的多媒体文件有格式和大小限制,如下:
  • 图片(image): 128K,支持JPG格式
  • 语音(voice):256K,播放长度不超过60s,支持AMRMP3格式
  • 视频(video):1MB,支持MP4格式
  • 缩略图(thumb):64KB,支持JPG格式
媒体文件在后台保存时间为3天,即3天后media_id失效。
使用网页调试工具调试该接口
二、下载多媒体文件
公众号可调用本接口来获取多媒体文件。请注意,视频文件不支持下载,调用该接口需http协议。
接口调用请求说明
  1. http请求方式: GET
  2. http://file.api.weixin.qq.com/cgi-bin/media/get?access_token=ACCESS_TOKEN&media_id=MEDIA_ID
  3. 请求示例(示例为通过curl命令获取多媒体文件)
  4. curl -I -G "http://file.api.weixin.qq.com/cgi-bin/media/get?access_token=ACCESS_TOKEN&media_id=MEDIA_ID"
复制代码



参数说明
参数是否必须说明
access_token调用接口凭证
media_id媒体文件ID
返回说明
正确情况下的返回HTTP头如下:
  1. HTTP/1.1 200 OK
  2. Connection: close
  3. Content-Type: image/jpeg
  4. Content-disposition: attachment; filename="MEDIA_ID.jpg"
  5. Date: Sun, 06 Jan 2013 10:20:18 GMT
  6. Cache-Control: no-cache, must-revalidate
  7. Content-Length: 339721
  8. curl -G "http://file.api.weixin.qq.com/cgi-bin/media/get?access_token=ACCESS_TOKEN&media_id=MEDIA_ID"
复制代码



错误情况下的返回JSON数据包示例如下(示例为无效媒体ID错误)::
  1. {"errcode":40007,"errmsg":"invalid media_id"}
复制代码



使用网页调试工具调试该接口

回复

使用道具 举报


您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版| 赣南网

© 2013-2016 Comsenz Inc. Powered by Discuz! X3.4

用微信扫一扫

赣南网