6.9.1 上传多媒体文件接口描述
上传多媒体文件的接口地址如下:
- http://file.api.weixin.qq.com/cgi-bin/media/upload?access_token=ACCESS_TOKEN&type=TYPE
调用该接口需要传递的参数如表6-11所示。
表6-11 上传多媒体文件接口所需参数
参数access_token和type通过URL传递,而参数media是通过POST/FORM方式传递的,也就是以FORM表单的方式上传多媒体文件。
微信服务器对上传的多媒体文件有大小和格式限制,如表6-12所示。
表6-12 多媒体文件的大小和格式限制
如果上传的媒体文件类型为thumb,上传成功后返回的JSON结果如下:
- {"type":"thumb","thumb_media_id":"ebyAP_AXNzOLkbMlq_dHs6eZv7KZbuR18tmH80B
- 3LdEaoJtY__FP6AUK-D6qX7_a","created_at":1384230564}
如果上传的是其他类型(图片、语音和视频)的媒体文件,上传成功后返回的JSON结果如下:
- {"type":"image","media_id":
- "OdHZsuag_O4r0BvtQANvI7gZ7ouvAPoOxrcJq_5q6yAA43KFCO-RqSKVQdHXV7os","created_
- 1384230626}
多媒体文件上传成功后返回的参数说明如表6-13所示。
表6-13 上传多媒体文件接口返回的参数说明
得到媒体文件标识后,就能够使用它向用户回复图片、语音、视频等多媒体消息。媒体文件会在微信服务器上保存3天,可以根据created_at判断thumb_media_id或media_id是否有效,如果有效可以重复利用,无须每次发多媒体消息时都上传文件。
多媒体文件上传失败时返回的JSON结果示例(缺少多媒体文件数据)如下:
- {"errcode":41005,"errmsg":"media data missing"}