封装了所有与微信服务器交互的消息:文本消息、图片消息、图文消息等等
提供了基于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项目的集成方法1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 | @RestController
@RequestMapping ( "/weixin" )
public class WeixinController extends WeixinControllerSupport {
private static final Logger log = LoggerFactory.getLogger(WeixinController. class );
private static final String TOKEN = "myToken" ;
@Override
protected String getToken() {
return TOKEN;
}
@Override
protected BaseMsg handleTextMsg(TextReqMsg msg) {
String content = msg.getContent();
log.debug( "用户发送到服务器的内容:{}" , content);
return new TextMsg( "服务器回复用户消息!" );
}
@Override
protected List<MessageHandle> getMessageHandles() {
List<MessageHandle> handles = new ArrayList<MessageHandle>();
handles.add( new MyMessageHandle());
return handles;
}
@Override
protected List<EventHandle> getEventHandles() {
List<EventHandle> handles = new ArrayList<EventHandle>();
handles.add( new MyEventHandle());
return handles;
}
}
|
基于servlet项目的集成方法1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 | public class WeixinServlet extends WeixinServletSupport {
private static final Logger log = LoggerFactory.getLogger(WeixinController. class );
private static final String TOKEN = "myToken" ;
@Override
protected String getToken() {
return TOKEN;
}
@Override
protected BaseMsg handleTextMsg(TextReqMsg msg) {
String content = msg.getContent();
log.debug( "用户发送到服务器的内容:{}" , content);
return new TextMsg( "服务器回复用户消息!" );
}
@Override
protected List<MessageHandle> getMessageHandles() {
List<MessageHandle> handles = new ArrayList<MessageHandle>();
handles.add( new MyMessageHandle());
return handles;
}
@Override
protected List<EventHandle> getEventHandles() {
List<EventHandle> handles = new ArrayList<EventHandle>();
handles.add( new MyEventHandle());
return handles;
}
}
|
开源中国主页:http://git.oschina.net/pyinjava/fastweixin |