使用微信的jssdk上传图片到自己的服务器media_id

原创
2016-08-04 09:20:48 1993浏览

1.拍照或从手机相册中选图接口
wx.chooseImage({

count: 1, // 默认9
sizeType: ['original', 'compressed'], // 可以指定是原图还是压缩图,默认二者都有
sourceType: ['album', 'camera'], // 可以指定来源是相册还是相机,默认二者都有
success: function (res) {
    var localIds = res.localIds; // 返回选定照片的本地ID列表,localId可以作为img标签的src属性显示图片
}

});

2.上传图片接口
wx.uploadImage({

localId: '', // 需要上传的图片的本地ID,由chooseImage接口获得
isShowProgressTips: 1, // 默认为1,显示进度提示
success: function (res) {
    var serverId = res.serverId; // 返回图片的服务器端ID
}

});

3.下载多媒体文件
公众号可调用本接口来获取多媒体文件。请注意,视频文件不支持下载,调用该接口需http协议。
接口调用请求说明
http请求方式: GET
http://file.api.weixin.qq.com/cgi-bin/media/get?access_token=ACCESS_TOKEN&media_id=MEDIA_ID

在进行第三步操作总是提示media_id无效,看到之前有很多人遇到这个问题,但是都没有解决方案,不知道有人知道没有?

回复内容:

1.拍照或从手机相册中选图接口
wx.chooseImage({

count: 1, // 默认9
sizeType: ['original', 'compressed'], // 可以指定是原图还是压缩图,默认二者都有
sourceType: ['album', 'camera'], // 可以指定来源是相册还是相机,默认二者都有
success: function (res) {
    var localIds = res.localIds; // 返回选定照片的本地ID列表,localId可以作为img标签的src属性显示图片
}

});

2.上传图片接口
wx.uploadImage({

localId: '', // 需要上传的图片的本地ID,由chooseImage接口获得
isShowProgressTips: 1, // 默认为1,显示进度提示
success: function (res) {
    var serverId = res.serverId; // 返回图片的服务器端ID
}

});

3.下载多媒体文件
公众号可调用本接口来获取多媒体文件。请注意,视频文件不支持下载,调用该接口需http协议。
接口调用请求说明
http请求方式: GET
http://file.api.weixin.qq.com/cgi-bin/media/get?access_token=ACCESS_TOKEN&media_id=MEDIA_ID

在进行第三步操作总是提示media_id无效,看到之前有很多人遇到这个问题,但是都没有解决方案,不知道有人知道没有?

这个功能我做过,没有遇到这种问题;
你确定media_id是图片的服务器端ID?

已解决,是因为access_token的问题,之前用的access_token在7200秒内过会改变,之后改成每次都重新获取access_token就可以了

但是这个也不是解决办法啊,微信对这个是获取频率是有限制的

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。