6.9.5 案例:上传及下载语音文件

首先,调用uploadMedia()方法向微信服务器上传一个语音文件,示例代码如下:

  1. public static void main(String args[]) {
  2. // 获取接口访问凭证
  3. String accessToken = CommonUtil.getToken("APPID", "APPSECRET").getAccessToken();
  4. // 上传多媒体文件
  5. WeixinMedia weixinMedia = uploadMedia(accessToken, "voice",
  6. "http://localhost:8080/weixinmpapi/test.mp3");
  7. System.out.println(weixinMedia.getMediaId());
  8. System.out.println(weixinMedia.getType());
  9. System.out.println(weixinMedia.getCreatedAt());
  10. }

在上面的示例中,笔者测试将本机的一个语音文件test.mp3上传到微信服务器,运行结果如图6-15所示。

6.9.5 案例:上传及下载语音文件 - 图1

图6-15 上传多媒体文件示例的运行结果

接着,调用getMedia()方法将之前上传的语音文件下载到本机,示例代码如下:

  1. public static void main(String args[]) {
  2. // 获取接口访问凭证
  3. String accessToken = CommonUtil.getToken("APPID", "APPSECRET").getAccessToken();
  4. // 下载多媒体文件
  5. getMedia(accessToken, "N7xWhOGYSLWUMPzVcGnxKFbhXeD_lLT5sXxyxDGEsCzWIB2CcUijSeQO
  6. YjWLMpcn ", "G:/download");
  7. }

运行上面的示例,如果下载成功,能够在G:\download目录下看到以media_id命名的amr格式的语音文件,同时也能够在MyEclipse控制台看到如下日志。

  1. [INFO ] 2013-12-31 11:52:20,357 org.liufeng.course.util.AdvancedUtil 下载媒体文件
  2.   成功,filePath=G:/download/N7xWhOGYSLWUMPzVcGnxKFbhXeD_lLT5sXxyxDGEsCzWIB2Cc-
  3.   UijSeQOYjWLMpcn.amr