怎么实现微信菜单回复指定图片?求思路


想在公众平台上实现一个功能:用点击自定义菜单“获取图片”,然后公众号能响应回复一张指定的图片给用户。

回复的图片是根据用户的身份即时动态生成的,按微信接口的说明,必须先上传该图片获取MediaId才能回复给用户(即是说我必须把生成出来的图片先上传到微信服务器)

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

问题就在这里,微信的图片上传必须通过js来发起...不适用于我现在的情况啊,因为我整个过程都是后台自动进行的,请问有什么其他方法可以解决这个问题?获取到MediaId

微信开发

二律悖反君 9 years, 6 months ago

1.用户点击菜单,会发送一条事件信息到你的服务接口上
2.收到用户的事件,得到openid返回信息(图片信息)

熊吉666 answered 9 years, 6 months ago

对于你这种情况,你可以这样设计。
第一步:当用户点击获取图片的时候,你可以在数据库中查询信息,包括该用户的openid,media_id。然后发送
第二步:如果说没有的话,你可以通过 新增临时素材 向微信服务器存储你要给用户发送的图片,然后这个接口会返回media_id,你在把这个media_id封装发送给用户,然后你在保存到你本地的数据库。方便下次操作。

eiqqier answered 9 years, 6 months ago

Your Answer