微信公众号通过js-sdk录音并上传微信服务器返回的serverId都是一个,是什么问题?
使用微信公众号测试账号开发,遇到使用jssdk下的jweixin.uploadVoice()上传录音,每次返回的serverId都相同:
1237378768e7q8e7r8qwesafdasdfasdfaxss111
localId不同,
然后去后台下载录音文件结果都是
{“errcode”:40007,“errmsg”:“invalid media_id hint: [ON83ta01218661]”}
测试号appid:wx5cb57aa45095d16e
使用的微信开发者工具:
代码如下:
jweixin.uploadVoice({ localId: self.localId, // 需要上传的音频的本地ID,由stopRecord接口获得 isShowProgressTips: 1, // 默认为1,显示进度提示 success: function (res) { var serverId = res.serverId; // 返回音频的服务器端ID console.log( 'serverId' ,serverId); uni.request({ url: serverUrl + '/file/downloadFromWechatServer' , data:{ serverId:serverId }, success(res1) { console.log( '成功' ); } }) } }); |
java后台:
try { String mediaId = request.getParameter( "serverId" ); String url = "http://file.api.weixin.qq.com/cgi-bin/media/get?access_token=" + accessToken + "&media_id=" + mediaId; AccessToken.saveUrlAs(url, "D:/upload" , "GET" , "fileName" ); } catch (Exception e) { e.printStackTrace(); } |