# EasyWeiXin **Repository Path**: MakeSomeFakeNews/EasyWeiXin ## Basic Information - **Project Name**: EasyWeiXin - **Description**: 让微信开发变得更加简单 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2021-03-01 - **Last Updated**: 2021-03-01 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # EasyWeiXin 如果你觉得还不错的话,点击star,fork支持一下吧
让微信开发变得更加简单 # 已经删除了
# 快速搭建微信公众平台服务器
简单封装了所有与微信服务器交互的消息:文本消息、图片消息、图文消息等等
提供MenuAPI、UserApi、UserTagAPI、MediaAPI、OauthAPI。。。。等等等等用于实现所有高级接口功能,使用极其简单
Demo---传送门:(https://github.com/adminzhou/EasyWeChatDemo) # API列表 ## 卡券相关 ### CardApi 卡券相关接口 ### CardCodeApi 核销卡券接口 ### CardExApi 特殊(高级)卡券接口 ### CardPayApi 付费卡券点接口 ### MemberCardApi 会员卡接口 ## 网页开发相关 ### Js_api jssdk相关 ### Oauth2Api 网页授权相关 ### PaymentApi 支付接口 ### ReadPackApi红包接口 ## 其他接口 ### MediaApi 媒体相关接口 ### MenuApi 菜单相关接口 ### UserApi 用户相关接口 ### UserTagApi 用户标签相关 ### BlackListApi 黑名单相关 ### TokenApi 基础token相关 ## 小程序 ### 。。。。。。。。。。。。 # 关于函数名 我喜欢get_xxx_xxx的方式命名。虽然 !!不规范, 那你来打我啊 # 使用步骤 ## 1.下载EasyWeChat ## 2.将EasyWechat引入项目 ## 3.新建weixin.properties ### 3.1配置weixin.properties文件 开发者模式
devMode = true
微信接入token
token = easywechat
第三方用户凭证
appid = wx0f687dead13778fb
第三方用户密钥
appsecret = fa593b36a401c7c59d8ea978018f9a5b
oauthUrl 网页授权链接
url = http://1467a8b6.ngrok.io/oauth
消息处理器
handler = cn.spring4.weixin.WeixinHandler
### 3.2更换配置信息 ================================================== ## 基于`springmvc`项目的集成方法 ```Java @Controller public class HelloWorld { @RequestMapping("/") public String index() { return "index"; } /** * 接入微信,并且向微信返回信息
* 接入流程请看 拦截器 * @param request * @param response * @return * @throws IOException */ @RequestMapping(value = "/weixin", produces = "text/html;charset=UTF-8") @ResponseBody public String weixin(HttpServletRequest request) throws IOException { ServletInputStream inputStream = request.getInputStream(); String outMsg = Weixin.getOutMsg(inputStream); return outMsg; } /** * 获取用户授权,并且获取用户资料 * * @param code * @param resp * @throws IOException * @throws NoSuchAlgorithmException */ @RequestMapping("/oauth") public void oauth(String code, HttpServletResponse resp) throws IOException, NoSuchAlgorithmException { Oauth2 o2 = new Oauth2(); if (StrKit.isBlank(code)) { resp.sendRedirect(o2.getSnsapi_userinfoUrl()); return; } Oauth2Token token = o2.login(code); UserInfo info = o2.getUserInfo(token.getAccess_token(), token.getOpenid()); System.out.println("info==" + info.toString()); return; } } ``` ## 拦截器 ```Java public class WeixinInterceptor implements HandlerInterceptor { /** * 如果请求为get,则为微信认证接入 */ public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception { String method = request.getMethod(); if (method.equalsIgnoreCase("post")) { return true; } String signature = request.getParameter("signature"); String timestamp = request.getParameter("timestamp"); String nonce = request.getParameter("nonce"); String echostr = request.getParameter("echostr"); boolean checkSignature = WeiXinAccess.checkSignature(PropertiesUtil.getToken(), signature, timestamp, nonce); if (!checkSignature) { System.out.println("请确认请求是否来自微信"); return false; } response.getOutputStream().write(echostr.getBytes("utf-8")); return false; } public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception { // TODO Auto-generated method stub } public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception { // TODO Auto-generated method stub } } ```
web.xml配置 ```xml CharacterEncodingFilter org.springframework.web.filter.CharacterEncodingFilter encoding UTF-8 forceEncoding true CharacterEncodingFilter /* spring org.springframework.web.servlet.DispatcherServlet contextConfigLocation /WEB-INF/springmvc.xml 1 spring / ```
springmvc ```xml ``` Maven 项目引入 ========== ```xml org.apache.httpcomponents httpmime 4.5.2 commons-codec commons-codec 1.9 org.apache.httpcomponents httpclient 4.5.2 com.alibaba fastjson 1.2.7 log4j log4j 1.2.17 javax.servlet javax.servlet-api 3.1.0 provided org.springframework spring-webmvc 4.3.9.RELEASE com.spring4 EasyWeChat 0.0.1-SNAPSHOT provided ```