本地服务器已经收到了请求,怎样回复微信服务器并不发信息给客户端或者说不给客户端做任何提示(后面是调用了客服接口来发消息的)?

蚕⊙▽⊙豆 2019-06-05 02:51:23
我有一个小问题想请教一下各位大佬,我用的java语音,开发工具是eclipse。
最近在搞微信公众号二次开发,实现当客户端给公众号发消息的时候能回复消息。因为接口比较多,很多时候超过了5秒。于是就采用了异步回复的方式(调用客服接口)来解决这样的问题,但在回复给微信服务器的这个步骤中就有点问题。
根据微信开发文档“假如服务器无法保证在五秒内处理并回复,必须做出下述回复,这样微信服务器才不会对此作任何处理,并且不会发起重试(这种情况下,可以使用客服消息接口进行异步回复),否则,将出现严重的错误提示。详见下面说明:

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


问题:怎么样回复空串?java中怎么编写content?

为什么会问这样的问题,因为我尝试以下方法都是错的,所以想请教一下:
String replyResult = "";//该公众号提供的服务出故障,请稍后重试
String replyResult = null;//该公众号提供的服务出故障,请稍后重试
String replyResult = "success";//界面提示success,体验不好
String replyResult = " ";//该公众号提供的服务出故障,请稍后重试
String replyResult = "\"\"";//界面提示"",体验不好
...全文
115 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
蚕⊙▽⊙豆 2019-06-05
  • 打赏
  • 举报
回复
搞了半天才明白,不是给微信服务器发送xml
String reply =
<xml>
<ToUserName>用户ID</ToUserName>
<FromUserName>公众号</FromUserName>
<CreateTime>1559725767159</CreateTime>
<MsgType>text</MsgType>
<Content></Content>
</xml>

print.print(reply);
print.flush();
print.close();

而是直接发送空字符串就可以了(有些时候往往把问题复杂化了)
print.print("");
print.flush();
print.close();

62,628

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧