1. XenForo 1.5.14 中文版——支持中文搜索!现已发布!查看详情
  2. Xenforo 爱好者讨论群:215909318 XenForo专区

新闻 fastweixin v1.2.0 发布,开始支持微信公众平台高级接口API 下载

本帖由 漂亮的石头2014-11-05 发布。版面名称:软件资讯

  1. 漂亮的石头

    漂亮的石头 版主 管理成员

    注册:
    2012-02-10
    帖子:
    486,020
    赞:
    46
    封装了所有与微信服务器交互的消息:文本消息、图片消息、图文消息等等
    提供了基于springmvc以及基于servlet框架的控制器,集成了微信服务器绑定、监听所有类型消息的方法

    使用时继承,重写即可,十分方便

    为何要依赖web框架:在我们的服务器绑定微信公众号、与微信关注者进行消息交互以及点击菜单事件时,我们是做为服务端的,根据公众平台开发要求,我们需要提供一个地址来处理这些事情,必须要用到web框架来完成这些。

    v1.2.0开始支持高级接口的API,https请求基于org.apache.httpcomponents 4.3.X,json解析基于fastjson 1.1.44
    框架中提供MenuAPI、MessageAPI、QrcodeAPI、UserAPI用于实现所有高级接口功能,使用极其简单

    内部实现token过期自动刷新,不用再关注token细节


    基于springmvc项目的集成方法


    @RestController
    @RequestMapping("/weixin")
    public class WeixinController extends WeixinControllerSupport {
    private static final Logger log = LoggerFactory.getLogger(WeixinController.class);
    private static final String TOKEN = "myToken";
    //设置TOKEN,用于绑定微信服务器
    @Override
    protected String getToken() {
    return TOKEN;
    }
    //重写父类方法,处理对应的微信消息
    @Override
    protected BaseMsg handleTextMsg(TextReqMsg msg) {
    String content = msg.getContent();
    log.debug("用户发送到服务器的内容:{}", content);
    return new TextMsg("服务器回复用户消息!");
    }
    /*1.1版本新增,重写父类方法,加入自定义微信消息处理器
    *不是必须的,上面的方法是统一处理所有的文本消息,如果业务觉复杂,上面的会显得比较乱
    *这个机制就是为了应对这种情况,每个MessageHandle就是一个业务,只处理指定的那部分消息
    */
    @Override
    protected List<MessageHandle> getMessageHandles() {
    List<MessageHandle> handles = new ArrayList<MessageHandle>();
    handles.add(new MyMessageHandle());
    return handles;
    }
    //1.1版本新增,重写父类方法,加入自定义微信事件处理器,同上
    @Override
    protected List<EventHandle> getEventHandles() {
    List<EventHandle> handles = new ArrayList<EventHandle>();
    handles.add(new MyEventHandle());
    return handles;
    }
    }





    基于servlet项目的集成方法


    public class WeixinServlet extends WeixinServletSupport {
    private static final Logger log = LoggerFactory.getLogger(WeixinController.class);
    private static final String TOKEN = "myToken";
    //设置TOKEN,用于绑定微信服务器
    @Override
    protected String getToken() {
    return TOKEN;
    }
    //重写父类方法,处理对应的微信消息
    @Override
    protected BaseMsg handleTextMsg(TextReqMsg msg) {
    String content = msg.getContent();
    log.debug("用户发送到服务器的内容:{}", content);
    return new TextMsg("服务器回复用户消息!");
    }
    //1.1版本新增,重写父类方法,加入自定义微信消息处理器
    @Override
    protected List<MessageHandle> getMessageHandles() {
    List<MessageHandle> handles = new ArrayList<MessageHandle>();
    handles.add(new MyMessageHandle());
    return handles;
    }
    //1.1版本新增,重写父类方法,加入自定义微信事件处理器
    @Override
    protected List<EventHandle> getEventHandles() {
    List<EventHandle> handles = new ArrayList<EventHandle>();
    handles.add(new MyEventHandle());
    return handles;
    }
    }

    开源中国主页:http://git.oschina.net/pyinjava/fastweixin
    fastweixin v1.2.0 发布,开始支持微信公众平台高级接口API下载地址
     
正在加载...