微信公众号开发--直接回复success或空字符串无效问题

 一、 被动回复空字符串或success无效问题

        腾讯微信开发者文档,对于被动回复消息有如下说明:假如服务器无法保证在五秒内处理并回复,必须做出下述回复,这样微信服务器才不会对此作任何处理,并且不会发起重试(这种情况下,可以使用客服消息接口进行异步回复),否则,将出现严重的错误提示。详见下面说明:

        1、直接回复success(推荐方式)

        2、直接回复空串(指字节长度为0的空字符串,而不是XML结构体中content字段的内容为空)

        一旦遇到以下情况,微信都会在公众号会话中,向用户下发系统提示“该公众号暂时无法提供服务,请稍后再试”:

        1、开发者在5秒内未回复任何内容

        2、开发者回复了异常数据,比如JSON数据等

        很多人在直接回复空字符或success时,发现响应无效,公众号依然会提示“该公众号暂时无法提供服务,请稍后再试“。

二、  解决方式:

        1、主线程回复""或success,注意仅单词或空字符即可,不需要封装成xml消息。

        2、异步线程组织xml消息进行回复。

        步骤2,异步回复消息,是开发者主动发起的操作,因此调用的是客服发送消息接口,通过http请求,向腾讯服务器发送json数据,此种方式可避免因开发者服务器响应时间过长而提示的“该公众号暂时无法提供服务,请稍后再试“问题。

      接口如下,详情参照腾讯开发者文档:

http请求方式: POST
https://api.weixin.qq.com/cgi-bin/message/custom/send?access_token=ACCESS_TOKEN

转载于:https://my.oschina.net/u/1586924/blog/793699

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值