fastweixin
==========
作者:peiyu
QQ:[125331682](http://wpa.qq.com/msgrd?v=3&uin=125331682&site=qq&menu=yes)
技术讨论QQ群:[367162748](http://shang.qq.com/wpa/qunwpa?idkey=e279a5147f3cb248a536e118464c72068d9f6ef33278987e6f88a17aab603cbb)
码云主页:[https://gitee.com/pyinjava/fastweixin](https://gitee.com/pyinjava/fastweixin)
[![Build Status](https://api.travis-ci.org/sd4324530/fastweixin.png?branch=master)](https://travis-ci.org/sd4324530/fastweixin)
[![@peiyu on weibo](https://img.shields.io/badge/weibo-%40peiyu-red.svg)](http://weibo.com/1728407960)
[![Maven Central](https://maven-badges.herokuapp.com/maven-central/com.github.sd4324530/fastweixin/badge.svg)](https://maven-badges.herokuapp.com/maven-central/com.github.sd4324530/fastweixin)
[![Circle CI](https://circleci.com/gh/sd4324530/fastweixin/tree/master.svg?style=svg)](https://circleci.com/gh/sd4324530/fastweixin/tree/master)
[![Gitter](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/sd4324530/fastweixin?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge)
[![License](https://img.shields.io/badge/license-Apache%202-4EB1BA.svg)](http://www.apache.org/licenses/LICENSE-2.0.html)
# 快速搭建微信公众平台服务器
简单封装了所有与微信服务器交互的消息:文本消息、图片消息、图文消息等等
提供了基于`springmvc`以及基于`servlet`框架的控制器,集成了微信服务器绑定、监听所有类型消息的方法
使用时继承,重写即可,十分方便
支持高级接口的API,框架中提供MenuAPI、CustomAPI、QrcodeAPI、UserAPI、MediaAPI、OauthAPI用于实现所有高级接口功能,使用极其简单
内部实现token过期自动刷新,不用再关注token细节
支持微信消息安全模式,但由于jdk的限制,导致想使用安全模式,必须修改jdk内部的jar包
官方网站下载:
[JCE无限制权限策略文件JDK7](http://www.oracle.com/technetwork/java/javase/downloads/jce-7-download-432124.html)
[JCE无限制权限策略文件JDK8](http://www.oracle.com/technetwork/java/javase/downloads/jce8-download-2133166.html)
下载后解压,可以看到local_policy.jar和US_export_policy.jar以及readme.txt
如果安装了JRE,将两个jar文件放到%JRE_HOME%\lib\security目录下覆盖原来的文件
如果安装了JDK,将两个jar文件放到%JDK_HOME%\jre\lib\security目录下覆盖原来文件
## 详细文档(感谢[luozhuang](http://blog.csdn.net/luozhuang) 的整理)
[【fastweixin框架教程1】一分钟快速搭建微信公众平台JAVA服务器](http://blog.csdn.net/luozhuang/article/details/51321485)
[【fastweixin框架教程2】weblogic javax.xml 解析xml问题](http://blog.csdn.net/luozhuang/article/details/51322065)
[【fastweixin框架教程3】JAVA进行HTTPS网站访问,PKIX path building failed解决方法](http://blog.csdn.net/luozhuang/article/details/51322127)
[【fastweixin框架教程4】AccessToken、QYAPIConfig管理](http://blog.csdn.net/luozhuang/article/details/51322177)
[【fastweixin框架教程5】企业号成员部门管理](http://blog.csdn.net/luozhuang/article/details/51322220)
[【fastweixin框架教程6】微信企业号给关注的用户主动发送推送消息](http://blog.csdn.net/luozhuang/article/details/51322292)
[【fastweixin框架教程7】微信企业号自定义菜单接口开发](http://blog.csdn.net/luozhuang/article/details/51322516)
[【fastweixin框架教程8】微信企业号临时素材管理](http://blog.csdn.net/luozhuang/article/details/51444137)
[【fastweixin框架教程9】扩展API实例——QYOauthAPI](http://blog.csdn.net/luozhuang/article/details/51444222)
## 基于`springmvc`项目的集成方法
```Java
@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;
}
//使用安全模式时设置:APPID
//不再强制重写,有加密需要时自行重写该方法
@Override
protected String getAppId() {
return null;
}
//使用安全模式时设置:密钥
//不再强制重写,有加密需要时自行重写该方法
@Override
protected String getAESKey() {
return null;
}
//重写父类方法,处理对应的微信消息
@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`项目的集成方法
```Java
public class WeixinServlet extends WeixinServletSupport {
@Override
protected WeixinSupport getWeixinSupport() {
return new MyServletWeixinSupport();
}
}
//用户自行实现的微信消息收发处理器
public class MyServletWeixinSupport extends WeixinSupport {
private static final Logger log = LoggerFactory.getLogger(MyServletWeixinSupport.class);
@Override
protected String getToken() {
return "myToken";
}
@Override
protected BaseMsg handleTextMsg(TextReqMsg msg) {
String content = msg.getContent();
log.debug("用户发送到服务器的内容:{}", content);
return new TextMsg("服务器回复用户消息!");
}
}
```
web.xml配置
```xml
<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>
```
## 基于`Jfinal`框架项目的集成方法
```Java
public class MyJfinalController extends Controller {
//用户自行实现的消息处理器
private WeixinSupport support = new MyServletWeixinSupport();
public void index() {
HttpServletRequest request = getRequest();
log.debug("method:{}", request.getMethod());
//绑定微信服务器
if ("GET".equalsIgnoreCase(request.getMethod().toUpperCase())) {
support.bindServer(request, getResponse());
renderNull();
} else {
//处理消息
renderText(support.processRequest(request), "text/xml");
}
}
}
```
Change Log
=========
[https://github.com/sd4324530/fastweixin/wiki/Change-Log](https://github.com/sd4324530/fastweixin/wiki/Change-Log)
Why Use
=========
[https://github.com/sd4324530/fastweixin/wiki/Why-use](https://github.com/sd4324530/fastweixin/wiki/Why-use)
Maven 项目引入
==========
```xml
<dependency>
<groupId>com.github.sd4324530</groupId>
<artifactId>fastweixin</artifactId>
<version>1.3.15</ve
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
fastweixin 源代码 极其方便的实现微信公众平台服务端开发,2行代码完成服务器绑定,3行代码实现用户消息监听 快速搭建微信公众平台服务器 简单封装了所有与微信服务器交互的消息:文本消息、图片消息、图文消息等等 提供了基于springmvc以及基于servlet框架的控制器,集成了微信服务器绑定、监听所有类型消息的方法 使用时继承,重写即可,十分方便 支持高级接口的API,框架中提供MenuAPI、CustomAPI、QrcodeAPI、UserAPI、MediaAPI、OauthAPI用于实现所有高级接口功能,使用极其简单 内部实现token过期自动刷新,不用再关注token细节
资源详情
资源评论
资源推荐
收起资源包目录
fastweixin 源代码 极其方便的实现微信公众平台服务端开发,2行代码完成服务器绑定,3行代码实现用户消息监听 (240个子文件)
.gitignore 212B
QYResultType.java 22KB
WeixinSupport.java 22KB
QYWeixinSupport.java 20KB
DataCubeAPI.java 17KB
FastweixinTest.java 16KB
NetWorkCenter.java 15KB
ResultType.java 14KB
MaterialAPI.java 11KB
WXBizMsgCrypt.java 11KB
UserAPI.java 10KB
MessageAPI.java 9KB
ApiConfig.java 9KB
QYFastweixinTest.java 9KB
CustomAPI.java 8KB
MessageUtil.java 8KB
QYUserAPI.java 7KB
QYAPIConfig.java 7KB
QYTagAPI.java 6KB
QYAgent.java 6KB
MenuAPI.java 6KB
MediaAPI.java 5KB
OauthAPI.java 5KB
TemplateMsgAPI.java 5KB
TagAPI.java 4KB
QYMediaAPI.java 4KB
QYUser.java 4KB
GetQYAgentInfoResponse.java 4KB
QYMenuAPI.java 4KB
QYAgentAPI.java 4KB
QrcodeAPI.java 3KB
JSONUtil.java 3KB
QYDepartmentAPI.java 3KB
GetQYUserInfoResponse.java 3KB
DownloadMaterialResponse.java 3KB
QYNewsRespMsg.java 3KB
ArticleTotalDetail.java 3KB
QYWeixinControllerSupport.java 3KB
SignUtil.java 3KB
ArticleSummary.java 3KB
QYBaseAPI.java 3KB
Article.java 3KB
JsAPI.java 3KB
BaseAPI.java 2KB
GetUserInfoResponse.java 2KB
UserReadHour.java 2KB
SystemAPI.java 2KB
QYOauthAPI.java 2KB
QYWeixinServletSupport.java 2KB
XMLParse.java 2KB
NewsMsg.java 2KB
WeixinServletSupport.java 2KB
UserRead.java 2KB
DownloadTest.java 2KB
QYMessageAPI.java 2KB
QYSendLocationEvent.java 2KB
QYDepartment.java 2KB
MusicMsg.java 2KB
AesException.java 2KB
QYBaseMsg.java 2KB
DownloadMediaResponse.java 2KB
MenuButton.java 2KB
WeixinControllerSupport.java 2KB
SHA1.java 2KB
QYMenuButton.java 2KB
QYLocationReqMsg.java 2KB
QYBaseRespMsg.java 2KB
PKCS7Encoder.java 2KB
Matchrule.java 2KB
CollectionUtil.java 2KB
QYConfigChangeNotice.java 2KB
QYVideoRespMsg.java 2KB
PrivateTemplate.java 2KB
QYTextRespMsg.java 2KB
SendMessageEvent.java 2KB
QYBatchJobEvent.java 2KB
QYLocationEvent.java 2KB
QYMenuType.java 2KB
DownloadMediaResponse.java 2KB
MenuType.java 2KB
Article.java 2KB
QYEventType.java 2KB
StreamUtil.java 2KB
BaseMsg.java 1KB
GetMaterialTotalCountResponse.java 1KB
ConfigChangeNotice.java 1KB
GetMaterialListResponse.java 1KB
QYVideoMsg.java 1KB
MessageBuilder.java 1KB
QYScanCodeEvent.java 1KB
QYVideoReqMsg.java 1KB
QYBaseReq.java 1KB
QYSendPicInfoEvent.java 1KB
VideoMsg.java 1KB
GetQYSendMessageResponse.java 1KB
StrUtil.java 1KB
QYTextMsg.java 1KB
TextMsg.java 1KB
QYVoiceReqMsg.java 1KB
UserSummary.java 1KB
共 240 条
- 1
- 2
- 3
mydear麦田
- 粉丝: 2087
- 资源: 23
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0