我用微信的js-sdk接口的wx.chooseImage选择图片,用wx.uploadImage上传图片,再用http://file.api.weixin.qq.com /cgi-bin/media/get?access_token=ACCESS_TOKEN&media_id=MEDIA_ID上传下载多媒 体文件接口下载图片到本地服务器,可总是报错{"errcode":40007,"errmsg":"invalid media_id"}无效媒体ID错误。
1、拍照或从手机相册中选图接口,得到图片的localIds。
wx.chooseImage({
count: 1, // 默认9
sizeType: ['original', 'compressed'], // 可以指定是原图还是压缩图,默认二者都有
sourceType: ['album', 'camera'], // 可以指定来源是相册还是相机,默认二者都有
success: function (res) {
var localIds = res.localIds; // 返回选定照片的本地ID列表,localId可以作为img标签的src属性显示图片
}
});
2、上传图片接口,得到serverId。
wx.uploadImage({
localId: '', // 需要上传的图片的本地ID,由chooseImage接口获得
isShowProgressTips: 1, // 默认为1,显示进度提示
success: function (res) {
var serverId = res.serverId; // 返回图片的服务器端ID
}
});
备注:上传图片有效期3天,可用微信多媒体接口下载图片到自己的服务器,此处获得的 serverId 即 media_id,参考文档 ../12/58bfcfabbd501c7cd77c19bd9cfa8354.html 目前多媒体文件下载接口的频率限制为10000次/天,如需要调高频率,请邮件weixin-open@qq.com,邮件主题为【申请多媒体接口调用量】,请对你的项目进行简单描述,附上产品体验链接,并对用户量和使用量进行说明。
3、通过“下载多媒体文件”接口
http请求方式: GET
http://file.api.weixin.qq.com/cgi-bin/media/get?access_token=ACCESS_TOKEN&media_id=MEDIA_ID
下载已经上传到微信服务器的图片到本地服务器,但是总提示{"errcode":40007,"errmsg":"invalid media_id"}无效媒体ID错误。
调试了很久,就是弄不懂是什么问题,请高人指点,谢谢
ACCESS_TOKEN
MEDIA_ID
这两个东西你不会是直接就这么写上去的吧?
ACCESS_TOKEN是根据appid和secret获取的
MEDIA_ID是通过wx.uploadImage方法拿的
https://github.com/JeffreySu/WeiXinMPSDK
楼主解决了吗?
遇到同样的问题,大神们有解决吗?
???
??