java微信公众平台开发一(tokzen认证)

来源:互联网 发布:西游记原著版本知乎 编辑:程序博客网 时间:2024/04/19 20:13



1.首先我们申请个微信公众平台帐号
2.高级开发模式进行认证
这里我们只需要写个简单的servlet 就可以通过认证!
demo:

package com.test.service;import java.io.BufferedInputStream;import java.io.IOException;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;@SuppressWarnings("serial")public class Demo extends HttpServlet {@Overridepublic void destroy() {super.destroy();}@Overridepublic void init() throws ServletException {super.init();}@Overrideprotected 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");//随机字符串      //TODO 对接收到的参数做数据验证,来确认该请求来自微信,避免被第三方随意攻击      //验证通过后,需要将随机字符串原样返回给微信,微信才确认你的这个服务正常      response.getWriter().print(echostr);}@Overrideprotected void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {BufferedInputStream bf = new BufferedInputStream(request.getInputStream());byte receiveByte[] = new byte[bf.available()];bf.read(receiveByte);   bf.close();      String receiveMsg = new String(receiveByte);   response.getWriter().write("receiveMsg="+receiveMsg);   }}


这里没有实际的逻辑,只是为了先通过认证,上面的doPost方法完全可以直接调用get方法,怎么写都行。
然后是web.xml 

<?xml version="1.0" encoding="UTF-8"?><web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">  <welcome-file-list>    <welcome-file>index.jsp</welcome-file>  </welcome-file-list>    <servlet>    <servlet-name>demoServlet</servlet-name>    <servlet-class>com.test.service.demo</servlet-class>  </servlet>  <servlet-mapping>    <servlet-name>demoServlet</servlet-name>    <url-pattern>/demoServlet</url-pattern>  </servlet-mapping></web-app>

然后大家需要把项目到处war部署到自己的sea 或者其他服务器上!请自行选择。
假如你服务器的地址为:http://test.sinaapp.com 我们在微信公众平台配置URL的时候需要加上servlet的路径也就是http://test.sinaapp.com/demoServlet
tokzen 可以随便写! 然后提交就OK了!

	
				
		
原创粉丝点击