微信发送消息后显示该公共号暂时无法提供服务,请稍后再试!

用户发送信息,公众账号会提示”该公众号暂时无法提供服务,请稍后再试“。遇到这个问题,,我们可以排除一下是否我们返回的数据有问题。 首先代码返回一个空的字符串,如果还是出现这样的提示,请看看签名验证是否失败,调试一下,看看log。 如果没有出现这样的提示,说明我们返回的结果格式有问题。 下面参考一下我返回的错误格式:

<xml> <toUserName><![CDATA[o_ZKtuBGHyFi2YcpSKlugRAomGrU]]></toUserName> <fromUserName><![CDATA[gh_940f1b1a6339]]></fromUserName> <createTime><![CDATA[1432042978676]]></createTime> <msgType><![CDATA[text]]></msgType> <funcFlag><![CDATA[0]]></funcFlag> <content><![CDATA[您发送的是文本消息!]]></content></xml>正确的格式:

<xml><ToUserName><![CDATA[o_ZKtuBGHyFi2YcpSKlugRAomGrU]]></ToUserName>   <FromUserName><![CDATA[gh_940f1b1a6339]]></FromUserName>   <CreateTime>![CDATA[1432044259308]</CreateTime>   <MsgType><![CDATA[text]]></MsgType>   <FuncFlag><![CDATA[0]]></FuncFlag>   <Content><![CDATA[您发送的是文本消息!]]></Content></xml>发现正确的格式节点首字母是大写的。 经测试,确实存在节点首字母大小写会引起这问题(原因还没知道,那位大神知道请告知一下。谢谢!)

以上都没有问题,看看是否下面问题引起的

开发模式下保证所有内容都有回复,不能匹配到的回复直接回复空字符串,而不是参数Content为空的xml消息,以便让微信服务器知道程序有响应

下面的这个回复就是导致上述错误的原因之一 <xml> <ToUserName><![CDATA[o_ZKtuBGHyFi2YcpSKlugRAomGrU]]></ToUserName> <FromUserName><![CDATA[gh_940f1b1a6339]]></FromUserName> <CreateTime>![CDATA[1432044259308]</CreateTime> <MsgType><![CDATA[text]]></MsgType> <FuncFlag><![CDATA[0]]></FuncFlag> <Content><![CDATA[]]></Content></xml>

力微休负重,言轻莫劝人。

微信发送消息后显示该公共号暂时无法提供服务,请稍后再试!

相关文章:

你感兴趣的文章:

标签云: