fastweixin v1.2.5 发布,极速微信公众号开发框架
fastweixin 发布 1.2.5 版本,版本更新内容:
-
修复MediaAPI中依赖spring框架工具类BUG;
-
重构自定义Handle接口,使用更加方便;
-
修复创建菜单空指针BUG,感谢bs2004提供反馈;
-
注释完善,便于理解;
快速搭建微信公众平台服务器
简单封装了所有与微信服务器交互的消息:文本消息、图片消息、图文消息等等
提供了基于springmvc以及基于servlet框架的控制器,集成了微信服务器绑定、监听所有类型消息的方法
使用时继承,重写即可,十分方便
v1.2.0开始支持高级接口的API,https请求基于org.apache.httpcomponents 4.3.6,json解析基于fastjson 1.1.46
框架中提供MenuAPI、MessageAPI、QrcodeAPI、UserAPI、MediaAPI用于实现所有高级接口功能,使用极其简单
内部实现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"
;
//设置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> initMessageHandles() {
List<MessageHandle> handles =
new
ArrayList<MessageHandle>();
handles.add(
new
MyMessageHandle());
return
handles;
}
//1.1版本新增,重写父类方法,加入自定义微信事件处理器,同上
@Override
protected
List<EventHandle> initEventHandles() {
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"
;
//设置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> initMessageHandles() {
List<MessageHandle> handles =
new
ArrayList<MessageHandle>();
handles.add(
new
MyMessageHandle());
return
handles;
}
//1.1版本新增,重写父类方法,加入自定义微信事件处理器
@Override
protected
List<EventHandle> initEventHandles() {
List<EventHandle> handles =
new
ArrayList<EventHandle>();
handles.add(
new
MyEventHandle());
return
handles;
}
}
|
web.xml配置
?
1
2
3
4
5
6
7
8
9
|
<
servlet
>
<
servlet-name
>weixin</
servlet-name
>
<
servlet-class
>xxx.xxx.WeixinServlet</
servlet-class
>
</
servlet
>
<
servlet-mapping
>
<
servlet-name
>weixin</
servlet-name
>
<
url-pattern
>/weixin</
url-pattern
>
</
servlet-mapping
>
|
相关链接
- fastweixin 的详细介绍:请点这里
- fastweixin 的下载地址:请点这里
- fastweixin 的源码地址:http://git.oschina.net/pyinjava/fastweixin