微信开发学习(二)

学习发送微信的消息类型。

当发送消息时,同时会附加的参数有,signature,timestamp,nonce, 以及消息的XML数据包。

数据包格式,类似:

<xml>

  <ToUserName><![CDATA[tousername]]></ToUserName>

    <FromUserName><![CDATA[fromusername]]></FromUserName>

    <CreateTime><!CDATA[createtime]]</CreateTime>

  <MsgType><!CDATA[type]]</MsgType>

<Content><!CDATA[content]]</Content>

<MsgId>xxxxxx</MsgId>

</xml>

收到原始数据的代码:

$postStr = $GLOBALS["HTTP_RAW_POST_DATA"];

将原始数据转变为对象:

$postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);

1. 文本消息

    

<xml>

  <ToUserName><![CDATA[tousername]]></ToUserName>

    <FromUserName><![CDATA[fromusername]]></FromUserName>

    <CreateTime><!CDATA[createtime]]</CreateTime>

  <MsgType><!CDATA[text]]</MsgType>

<Content><!CDATA[content]]</Content>

<MsgId>xxxxxx</MsgId>

</xml>

2. 图片消息

<xml>

  <ToUserName><![CDATA[tousername]]></ToUserName>

    <FromUserName><![CDATA[fromusername]]></FromUserName>

    <CreateTime><!CDATA[createtime]]</CreateTime>

  <MsgType><!CDATA[image]]</MsgType>

<PicUrl><!CDATA[http://xxxxxx]]</PicUrl>

<MsgId>xxxxxx</MsgId>

<MediaId><![CDATA[xxxxxx]]></MediaId>

</xml>

3. 语音消息

<xml>

  <ToUserName><![CDATA[tousername]]></ToUserName>

    <FromUserName><![CDATA[fromusername]]></FromUserName>

    <CreateTime><!CDATA[createtime]]</CreateTime>

  <MsgType><!CDATA[voice]]</MsgType>

 <MediaId><![CDATA[xxxxxx]]></MediaId>

 <Format><![CDATA[amr]]></Format>

<MsgId>xxxxxx</MsgId>

<Recognition><![CDATA[]]></Recognition>

</xml>

4.视频消息

<xml>

  <ToUserName><![CDATA[tousername]]></ToUserName>

    <FromUserName><![CDATA[fromusername]]></FromUserName>

    <CreateTime><!CDATA[createtime]]</CreateTime>

  <MsgType><!CDATA[video]]</MsgType>

 <MediaId><![CDATA[xxxxxx]]></MediaId>

<ThumbMediaId><![CDATA[xxxx]]></ThumbMediaId>

<MsgId>xxxxxx</MsgId>

</xml>

5.地理位置消息

<xml>

  <ToUserName><![CDATA[tousername]]></ToUserName>

    <FromUserName><![CDATA[fromusername]]></FromUserName>

    <CreateTime><!CDATA[createtime]]</CreateTime>

   <MsgType><!CDATA[location]]</MsgType>

 <Location_X>xxxxx</Location_X>

<Location_Y>xxxx<Location_Y>

<Scale>xx</Scale>

<Label><![CDATA[xxxxxx]]></Label>

<MsgId>xxxxxx</MsgId>

</xml>

6.连接消息

<xml>

  <ToUserName><![CDATA[tousername]]></ToUserName>

    <FromUserName><![CDATA[fromusername]]></FromUserName>

    <CreateTime><!CDATA[createtime]]</CreateTime>

  <MsgType><!CDATA[link]]</MsgType>

 <Title><![CDATA[xxxxxx]]></Title>

<Description><![CDATA[xxxx]]></Description>

<Url><![CDATA[xxxx]]></Url>

<MsgId>xxxxxx</MsgId>

</xml>

原文地址:https://www.cnblogs.com/ahMay/p/5151273.html