都是按照教程上来的,也正确获取到了mediaid,文本和图文都可以被动回复,图片不能,一直提示出现故障,求大神或者微信工作人员指点啊
//回复图片消息
private function transmitPic($object,$media)
{
$textTpl = "<xml>
<ToUserName>< ![CDATA[%s]]></ToUserName>
<FromUserName>< ![CDATA[%s]]></FromUserName>
<CreateTime>%s</CreateTime>
<MsgType>< ![CDATA[image]]></MsgType>
<Image>
<MediaId>< ![CDATA[%s]]></MediaId>
</Image>
</xml>";
$result = sprintf($textTpl,$object->FromUserName, $object->ToUserName, time(),$media);
return $result;
}
我发送被动回复图片消息不成功是因为我在代码里用了测试号的appid等信息获取的token,却跑到自己真实的公众号去测,这样文本信息没问题,却图片消息不行了。你们也可以看看appid等信息配的是否有问题。这太容易搞混了,你可能把图片上传到了测试号的appid对应的token,然后尝试用真实公众号appid获取的token发,也有可能上传和发送的时候都是用了用测试号的appid获取的token。
现在还有问题吗?具体怎么操作的?
我也出现和他一样的问题普通的text和news类型文件能正常自动回复,但是图片不能。具体操作是把图片通过微信的
接口传到微信临时服务器中,微信给你返回一个media_id,你把media_id填到一个传图片的xml,然后像传文字一样,把这个xml给微信服务器,然后他给你返回一张图片。但是我在传xml给服务器的时候出错了,这是我传的xml