zoukankan      html  css  js  c++  java
  • java微信开发框架wechat4j入门教程

    wechat4j

    What is wechat4j?

    wechat develop framework for java(微信开发框架JAVA版,最简单易用微信开发框架)

    wechat4j可以用来干什么?

    wechat4j是一个帮助你开发微信应用的jar包,使用它,你开发微信公众号应用只需要几秒钟的时间,完全不用关注太细节的东西。

    wechat4j快速开始

    可以去下载wechat4j示例项目,然后在其基础之上修改即可。如果你要自己搭建,那么使用wechat4j只需要两步就可以搭建微信开发环境。

    1. 创建一个web工程,导入jdk和相关的web工程jar包。
    2. 下载wechat4j.jar包,下载地址wechat4j下载
    3. 创建wechat4j配置文件,在src目录下(java根目录)创建wechat4j.properties文件,配置你微信公众号的相关信息。内容如下:
    #you server url
    wechat.url=
    #you wechat token
    wechat.token=token
    #message secret key,if don't set then message is cleartext
    wechat.encodingaeskey=
    
    #wechat appid
    wechat.appid=appid
    #wechat app secret
    wechat.appsecret=secret
    
    #wechat access token server ,when you save in db,must implement you server class
    #this class must extend org.sword.wechat4j.token.DbAccessTokenServer
    #if no this property,then token server is default memery accesstoken server()
    wechat.accessToken.server.class=
    
    #jsapi_ticket customer server class name,
    #this class must extend org.sword.wechat4j.token.server.CustomerServer
    #if no this property,then ticket server is default memery ticket server
    wechat.ticket.jsapi.server.class=
    
    

    你也可以在jar包的META-INF目录下找到wechat4j.properties.sample文件,复制到src目录下修改名称即可。wechat4j.properties配置文件的配置项意义参见wechat4j配置文件解读

    通过以上步骤,你的微信工程就完全搭好了。

    wechat4j 运行环境

    wechat4j要求的最低java运行环境是jdk1.6

    wechat4j.jar的依赖jar包

    • commons-codec.jar 1.3以上
    • commons-lang3.jar
    • log4j.jar 1.2以上
    • fastjson-1.2.0.jar
    • fluent-hc-4.3.6.jar(httpclient依赖)
    • httpclient-4.3.6.jar
    • httpcore-4.3.3.jar (httpclient依赖)
    • servlet-api.jar 如果你是web工程,导入支持web工程的包就会包括,例如tomcat包

    开发自己的微信应用

    wechat4j开发环境搭好之后,就可以开始开发自己的微信应用了。比如我有一个微信号的token是lejian,下面就以她为例子来说明。

    创建自己公众号服务类

    创建自己的微信公众号服务类,需要继承wechat4j的WechatSupport类,然后实现其抽象方法即可,下面以文本消息处理为例子

    public class Lejian extends WechatSupport{
    public Lejian(HttpServletRequest request, String token) {
    super(request, token);
    }
    
    @Override
    protected void onText() {
    this.wechatRequest.getFromUserName();
    String content = "test ok";
    responseText(content);
    }
    }
    

    上面代码中的onText()是WechatSupport的抽象方法,需要你自己的类来实现,表示对文本消息的处理,示例中是接收到用户的消息之后,返回给用户“test ok”文本消息。

    创建微信服务地址

    创建微信服务地址(微信公众平台中配置的自己服务器地址)servlet类。如果是springmvc则创建对应的controller,如果是struts则创建对应的action类。servlet类示例如下:

    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    Lejian lejian = new Lejian(request, TOKEN);
    String result = lejian.execute();
    response.getOutputStream().write(result.getBytes());
    }
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    Lejian lejian = new Lejian(request, TOKEN);
    String result = lejian.execute();
    response.getOutputStream().write(result.getBytes());
    
    }
    

    通过上面两步你的微信服务就可以运行了

    如何得到微信的请求参数

    继承了WechatSupport类之后,你可以通过wechatRequest.getFromUserName()类似的方法来得到微信服务器请求的参数。详细信息请阅读微信请求参数

    如何设置响应参数

    继承了WechatSupport类之后,你可以通过wechatResponse.setFromUserName(fromUser)类似的方法来设置给微信服务器的响应参数。详细信息请阅读响应微信服务器参数

    如何响应用户信息

    以文本信息为例,响应文本信息只需要在你的onText方法中使用responseText(content)即可(参见上面的代码例子)

    wechat4j示例项目

    如果你有好的demo项目,请邮件或者修改本文件然后pull request给我,我会列在上面。

    技术支持

    • wechat4j技术交流QQ群 423134346
    • 支持邮件 sword_org@163.com
    • wechat4j暂无论坛,欢迎开通论坛交流版块,如果开通请邮件,我会添加到这里。

    贡献代码

    1. 如果你觉得本项目不错,希望你能够点击一下右上角的star
    2. 如果你希望参与改进本项目,那么请点击右上角的fork,修改之后pull request即可。如果你的贡献不错,你就会收到加入sword开源社区的邀请。
    3. 如果你发现了一个bug,请你创建一个issue来报告。
      非常非常欢迎你能够参与本项目的建设,每人做出一点点贡献,对整个项目来说就是一个非常大的贡献,希望集合众人的力量,让项目走的更好,能够为更多的人服务。

    贡献者列表

  • 相关阅读:
    ASP.NET Core 3.0 WebApi中使用Swagger生成API文档简介
    $.ajax
    C#使用RabbitMQ
    WebAPI+NLog实现接口调用日志输出
    Spire.Doc组件读取与写入Word
    .net中RabbitMQ生产者/消费者
    第2课
    第1课
    详解usbmon抓取的log各字段的含义
    使用 usbmon 抓取 usb 总线上的数据
  • 原文地址:https://www.cnblogs.com/chengn/p/4262516.html
Copyright © 2011-2022 走看看