公众号上传图片作为临时素材后发送给用户
传第一张的时候,电脑版和手机上查看原图,可以查看,显示正常
后面传第二张的时候,电脑版上查看原图,还是显示第一张的原图,但是手机上查看原图却正常
只有把电脑版退出再打开,第二张图点查看原图才能显示正常,但是再传图片的话还是会出现同样的问题
不清楚是电脑版微信的bug?还是调用api的方式有问题?
附主要功能代码
def send_image(self, username, media_id):
"""
回复图片消息到指定用户
"""
url = self.api_url('message/custom/send')
headers = {
'Content-Type': 'application/json; charset=utf-8'
}
data = {
'touser': username,
"msgtype": "image",
"image": {
"media_id": media_id,
},
}
return requests.post(
url,
data=json.dumps(data, ensure_ascii=False).encode('utf-8'),
headers=headers,
)
# 上传图片
url = self.api_url('media/upload', 'type=image')
upload_data = {
"media": (img_name, open(image_path, 'rb'), 'application/octet-stream')
}
res = requests.post(
url,
files=upload_data,
).json()
if 'media_id' in res:
media_id = res['media_id']
self.send_image(username, media_id)
else:
raise Exception(json.dumps(res, ensure_ascii=False))
你好,提供截图或录屏看看