JAVA微信开发weixin4j新手接入之Servlet方式接入

xiaoxiao2021-02-28  45

今天为大家来演示一下,使用JavaServlet方式,用weixin4j如何进行新手接入。

首先大家需要新建一个空的web项目。

下面是代码:

[java] view plain copy print ? package org.weixin4j.demo;     import com.thoughtworks.xstream.XStream;  import java.io.IOException;  import javax.servlet.ServletException;  import javax.servlet.http.HttpServlet;  import javax.servlet.http.HttpServletRequest;  import javax.servlet.http.HttpServletResponse;  import org.weixin4j.Configuration;  import org.weixin4j.message.OutputMessage;  import org.weixin4j.message.TextOutputMessage;  import org.weixin4j.util.TokenUtil;  import org.weixin4j.util.XStreamFactory;     /**  * 新手接入  * 本次接入设定的访问URL为:http://www.weixin4j.org/api/公众号名称  * @author weixin4j<weixin4j@ansitech.com>  */  public class WechatServlet extends HttpServlet {      @Override      protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {          String path = request.getServletPath();          //1.验证消息真实性          //获取微信公众号          String gongzonghao = path.substring(path.lastIndexOf("/"));          //如果获取不到公众号,则向服务器发生错误信息          if (gongzonghao == null) {              response.getWriter().write("error");          } else {              //根据公众号,算出对应的Token,然后进行验证              gongzonghao = gongzonghao.substring(1);              //获取配置文件配置的Token              String token = Configuration.getProperty("weixin4j.token");              if (Configuration.isDebug()) {                  System.out.println("取出公众号Token:" + token);              }              //成为开发者验证              String signature = request.getParameter("signature");   // 微信加密签名              String timestamp = request.getParameter("timestamp");   // 时间戳              String nonce = request.getParameter("nonce");           // 随机数              String echostr = request.getParameter("echostr");       //               //确认此次GET请求来自微信服务器,原样返回echostr参数内容,则接入生效,成为开发者成功,否则接入失败              if (TokenUtil.checkSignature(token, signature, timestamp, nonce)) {                  response.getWriter().write(echostr);              } else {                  response.getWriter().write("error");              }          }      }      @Override      protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {          OutputMessage outputMsg = new TextOutputMessage("您的消息服务器已收到!");          // 把发送发送对象转换为xml输出          XStream xs = XStreamFactory.init(true);          xs.alias("xml", outputMsg.getClass());          String xml = xs.toXML(outputMsg);          if (Configuration.isDebug()) {              System.out.println("POST输出消息:[" + xml + "]");          }          response.getWriter().write(xml);      }  }   接下来是配置web.xml:

[html] view plain copy print ? <!-- Servlet方式 微信接入配置 -->  <servlet>      <servlet-name>wechat</servlet-name>      <servlet-class>org.weixin4j.demo.WechatServlet</servlet-class>  </servlet>  <servlet-mapping>      <servlet-name>wechat</servlet-name>      <url-pattern>/api/*</url-pattern>  </servlet-mapping>  

最后,将项目打包,发布到服务器,就可以在微信公众号平台中,进行开发者接入认证了。

祝你部署成功,生活愉快!

明天会有更精彩的内容,别走开,马上回来!

您可以加入我们的官方QQ群:365736353,专业人为您解答各种技术问题。

转载至: http://www.weixin4j.org/article/weixin4j-servlet.html 更多文章,请关注: http://www.weixin4j.org/

转载请注明原文地址: https://www.6miu.com/read-30521.html

最新回复(0)