就一个简简单单的回复图片,搞了一个小时了没成功,还找不到问题,后来突然发现,从接口文档里面复制过来的代码里面有空格,就是这些空格导致了失败,解决办法就是去掉其中的空格。
接口文档代码如下(格式化之后):
<xml>
<ToUserName>< ![CDATA[toUser] ]></ToUserName>
<FromUserName>< ![CDATA[fromUser] ]></FromUserName>
<CreateTime>12345678</CreateTime>
<MsgType>< ![CDATA[image] ]></MsgType>
<Image><MediaId>< ![CDATA[media_id] ]></MediaId></Image>
</xml>
修改之后可以回传的代码:
private function transmitText($object, $content)
{
$textTpl = "<xml>
<ToUserName><![CDATA[%s]]></ToUserName>
<FromUserName><![CDATA[%s]]></FromUserName>
<CreateTime>%s</CreateTime>
<MsgType><![CDATA[text]]></MsgType>
<Content><![CDATA[%s]]></Content>
</xml>";
$result = sprintf($textTpl, $object->FromUserName, $object->ToUserName, time(), $content);
echo $result;
return $result;
}