SpringMVC 用http请求的Get和Post请求作为路由的方法的重载方式
2016-07-19 13:48
781 查看
@Controller @RequestMapping("/messageProcessing") public class WechatPushController { @Autowired private WechatPushService wechatPushService; @Autowired private WechatOAuthService wechatOAuthService; @Autowired private WechatUserService wechatUserService; /** * 确认请求来自微信服务器 */ @RequestMapping(value="/doGet",method=RequestMethod.GET) public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // 微信加密签名 String signature = request.getParameter("signature"); // 时间戳 String timestamp = request.getParameter("timestamp"); // 随机数 String nonce = request.getParameter("nonce"); // 随机字符串 String echostr = request.getParameter("echostr"); PrintWriter out = response.getWriter(); // 通过检验signature对请求进行校验,若校验成功则原样返回echostr,表示接入成功,否则接入失败 if (WechatSignUtil.checkSignature(signature, timestamp, nonce)) { out.print(echostr); } out.close(); out = null; } /** * 处理微信服务器发来的消息 */ @RequestMapping(value="/doGet",method=RequestMethod.POST) public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // 将请求、响应的编码均设置为UTF-8(防止中文乱码) request.setCharacterEncoding("UTF-8"); response.setCharacterEncoding("UTF-8"); // 调用核心业务类接收消息、处理消息 String respMessage = wechatPushService.processRequest(request); // 响应消息 PrintWriter out = response.getWriter(); out.print(respMessage); out.close(); }
相关文章推荐
- 《UNIX网络编程(第3版)》unp.h等源码文件的编译安装
- Unix网络单词汇总
- Java 请求https 的各种方式详细代码
- AngularJS XMLHttpRequest
- IIS7.5上的REST服务的Put,Delete操作发生HTTP Error 405.0 - Method Not Allowed 解决方法
- 自建证书配置HTTPS服务器
- TCP/IP 和 Socket 的关系
- 使用sohu的网络yum源操作步骤
- 区别 PHP 的 $_POST、$HTTP_RAW_POST_DATA 和 php://input
- Windows最常用的几个网络CMD命令总结
- HTTPS详解SSL/TLS
- ip地址分类简述
- https加密流程和原理
- 安卓的访问网络
- tcpdump抓包规则常用命令
- dTree 动态生成树(http://luohua.iteye.com/blog/451453)
- Android 网络框架学习之Retrofit,androidretrofit
- HTTP状态码大全
- HTTP请求头大全
- 五种服务器网络模型