微信公众号——回复关键字准备工作

文章介绍了如何实现微信公众号根据用户输入的关键字自动回复功能。首先详细阐述了消息的处理流程,接着讲解了在公众号后台配置服务器信息的步骤,包括设置URL、Token、EncodingAESKey等。然后提到了需要开发两个接口,一个用于GET请求的验证,另一个用于POST请求接收并处理微信服务器的消息。最后,文章鼓励读者留言交流并关注作者的公众号。
摘要由CSDN通过智能技术生成

目录

引言

实现方案

公众号后台信息配置


引言

我相信百分之99的程序员都遇到过这么个场景,关注的公众号,回复诸如python,返回下载地址的消息。如下图:

实现方案

我们先来看一下具体的流程,首先是微信客户端发送消息到微信服务器,微信服务器在将消息转发到我们的服务器,然后,我们的服务器根据关键字处理消息,返回微信所需的数据格式封装数据,返回给微信服务器,微信服务器再将消息推送到微信客户端

这就是大致的实现流程及细节。

公众号后台信息配置

我们在开发的时候,一定要配置我们的服务器与微信服务器完成通信

在微信公众号后台中,选择 设置与开发,然后点击下方的基本配置,进入后在右侧服务器配置处对我们的服务器地址(URL)、令牌(Token)、消息加解密密钥(EncodingAESKey)、消息加解密方式进行配置

上述的配置完成后,我们对上面的URL开发两个接口:

1)、GET请求的接口,用来对服务器有效性的验证

protected void doGet(HttpServletRequest req, HttpServletResponse resp)
      throws ServletException, IOException {

   //微信加密签名
   String signature=req.getParameter("signature");
   //时间戳
   String timestamp=req.getParameter("timestamp");
   //随机数
   String nonce=req.getParameter("nonce");
   //随即字符串
   String echostr=req.getParameter("echostr");
   
   PrintWriter out=resp.getWriter();//得到流
   //通过验证signature对请求进行校验,若成功则原封不动的返回echose,既连接成功,否则连接失败
   
   if(SignUtil.checkSingnature(signature, timestamp, nonce)){
      out.print(echostr);
      
   }
   if(out != null){
      
      out.close();
   }
   out=null;
   
}

2)、POST请求的接口,用来接收微信服务器发送过来的消息。(微信服务器的消息全部是post请求过来的)

protected void doPost(HttpServletRequest req, HttpServletResponse resp)
      throws ServletException, IOException {
    // 将请求、响应的编码均设置为UTF-8(防止中文乱码)  
       req.setCharacterEncoding("UTF-8");  
       resp.setCharacterEncoding("UTF-8");  
 
       // 调用核心业务类接收消息、处理消息  
       String respMessage = CoreService.processRequest(req);  
         
       // 响应消息  
       PrintWriter out = resp.getWriter();  
       out.print(respMessage);  
       out.close();  
}

好了,今天关键字回复的准备工作就完成了,欢迎大家留言交流。

也欢迎大家点击下方卡片,扫码关注《coder练习生》

这篇文章因为文字段被标记为质量低,以下文字就是为了打破它的文字段而造成的质量低!

相信和我一样遇到这个问题的的小伙伴们,心里也已经暗自问候了这个产品经理的祖总十八代了吧!

算法实在是不敢苟同,文字的长短和文章的质量有毛线的关系吗?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ybb_ymm

你的鼓励会是对我最大的支持

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值