一 消息通信
1 公众平台的消息通信过程

以上5个步骤中,作为开发这我们主要的精力都集中在3步骤,主要包含3个任务:
1)接收来自2的xml消息;
2)服务器内部逻辑处理
3)组织并返回用于4的xml的信息
2 xml的通信格式
<XML>
<TOUSERNAME><![CDATA[GH_A96A4A619366]]></TOUSERNAME>
<FROMUSERNAME><![CDATA[OLPJZJSXUQPJOV0HLRUZKNZKC91E]]></FROMUSERNAME>
<CREATETIME>1357986928</CREATETIME>
<MSGTYPE><![CDATA[TEXT]]></MSGTYPE>
<CONTENT><![CDATA[TNT2]]></CONTENT>
<MSGID>5832509444155992350</MSGID>
</XML>
| 参数 | 描述 |
| ToUserName | 开发者微信号 |
| FromUserName | 发送方账号(一个openid) |
| CreateTime | 消息创建时间(整型) |
| MsgType | text |
| Content | 文本消息内容 |
| MsgId | 消息id 64位整型 |
MsgId需要注意下,它实际上是微信的一个容错机制,当应用服务器不能响应微信服务器时,微信服务器会发送多条
相同Msgid的信息到应用服务器,以防止丢包的情况。这时我们需要对MsgId进行去重,否则会多次执行同一个请求。
<XML> <TOUSERNAME><![CDATA[OLPJZJSXUQPJOV0HLRUZKNZKC91E]]></TOUSERNAME> <FROMUSERNAME><![CDATA[GH_A96A4A619366]]></FROMUSERNAME> <CREATETIME>12345678</CREATETIME> <MSGTYPE><![CDATA[TEXT]]></MSGTYPE> <CONTENT><![CDATA[CONTENT]]></CONTENT> <FUNCFLAG>0</FUNCFLAG> </XML>
对应的官方说明
| 参数 | 描述 |
| ToUserName | 接收方账号(收到的openid) |
| FromUserName | 开发者微信号 |
| CreateTime | 消息创建时间(整型) |
| MsgType | text |
| Content | 回复的消息内容,长度不超过2048字节 |
原文:https://www.cnblogs.com/123-com/p/12800142.html