Java微信公眾平臺開發(fā)回復文本消息
類名或參數(shù)描述WeChatServlet:公眾號基本配置里-服務器配置url,http://100.200.200.78/weChat/weChatServlet一個普通的Java servlet類,
類名或參數(shù)描述
WeChatServlet:公眾號基本配置里-服務器配置url,http://100.200.200.78/weChat/weChatServlet
一個普通的Java servlet類,服務器會將XML格式數(shù)據(jù)經servlet類中doPost方法回復給微信服務器,weChat為項目名稱
Token:公眾號中基本配置-服務器配置中的Token,案例中為weixinTest(請查看doGet方法)
SignUtil:WeChatServlet中微信接入驗證簽名算法工具類,請參考doGet方法
MessageUtil:解析XML工具類
WeChatServlet代碼
```java
package com.test;
import ;
import ;
import ;
import ;
import ;
import ;
import ;
import ;
/
* 核心請求處理類
* @author vxzsk
*
* doGet方法里有個weixinTest,這個是公眾管理平臺里面自己設置的token,
* 大家根據(jù)自己的token替換
*/
public class WeChatServlet extends HttpServlet {
private static final long serialVersionUID 1508798736675904038L;
/
* 確認請求來自微信服務器
*/
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
("原創(chuàng)");
// 微信加密簽名
String signature ("signature");
("微信加密簽名signature:-----------------------" signature);
// 時間戳
String timestamp ("timestamp");
("時間戳timestamp:-----------------------" timestamp);
// 隨機數(shù)
String nonce ("nonce");
("隨機數(shù)nonce:-----------------------" nonce);
// 隨機字符串
String echostr ("echostr");
("隨機字符串echostr:-----------------------" echostr);
PrintWriter out ();
// 通過檢驗signature對請求進行校驗,若校驗成功則原樣返回echostr,表示接入成功,否則接入失敗
if (("weixinTest", signature, timestamp, nonce)) {
(echostr);
("這是:" echostr);
}
();
out null;
}
/
* 處理微信服務器發(fā)來的消息
*/
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
("微信服務器發(fā)來消息------------");
("");
// 將請求、響應的編碼均設置為UTF-8(防止