6.9.5 案例:上传及下载语音文件
首先,调用uploadMedia()方法向微信服务器上传一个语音文件,示例代码如下:
- public static void main(String args[]) {
- // 获取接口访问凭证
- String accessToken = CommonUtil.getToken("APPID", "APPSECRET").getAccessToken();
- // 上传多媒体文件
- WeixinMedia weixinMedia = uploadMedia(accessToken, "voice",
- "http://localhost:8080/weixinmpapi/test.mp3");
- System.out.println(weixinMedia.getMediaId());
- System.out.println(weixinMedia.getType());
- System.out.println(weixinMedia.getCreatedAt());
- }
在上面的示例中,笔者测试将本机的一个语音文件test.mp3上传到微信服务器,运行结果如图6-15所示。
图6-15 上传多媒体文件示例的运行结果
接着,调用getMedia()方法将之前上传的语音文件下载到本机,示例代码如下:
- public static void main(String args[]) {
- // 获取接口访问凭证
- String accessToken = CommonUtil.getToken("APPID", "APPSECRET").getAccessToken();
- // 下载多媒体文件
- getMedia(accessToken, "N7xWhOGYSLWUMPzVcGnxKFbhXeD_lLT5sXxyxDGEsCzWIB2CcUijSeQO
- YjWLMpcn ", "G:/download");
- }
运行上面的示例,如果下载成功,能够在G:\download目录下看到以media_id命名的amr格式的语音文件,同时也能够在MyEclipse控制台看到如下日志。
- [INFO ] 2013-12-31 11:52:20,357 org.liufeng.course.util.AdvancedUtil 下载媒体文件
- 成功,filePath=G:/download/N7xWhOGYSLWUMPzVcGnxKFbhXeD_lLT5sXxyxDGEsCzWIB2Cc-
- UijSeQOYjWLMpcn.amr