jsp 微信公众平台 token验证

 

1.jsp页面验证token时代码如下:

<%

out.print(request.getParameter("echostr"));  

%> 

 

注意:(1)只需要在页面写上述代码,jsp 头部也不要写,还要注意<%之前不要有空格或者空行

         (2)公众平台配置的页面及上述代码所在页面,并且服务器所在端口必须是80端口

 

2.当验证通过后,修改页面代码为:

 

 

<%@ page language="java" import="java.io.*,java.util.*" pageEncoding="UTF-8"%>

 <%

String path = request.getContextPath();

%>

<%-- <%

out.print(request.getParameter("echostr"));  

%> --%>

<%

 // 接收XML数据

BufferedReader br = new BufferedReader(new InputStreamReader((ServletInputStream)request.getInputStream()));

String line = null;

StringBuilder sb = new StringBuilder();

while((line = br.readLine())!=null){

   sb.append(line);

}

// 取出发送用户

String xmlS = sb.toString();

System.out.println(xmlS);

if(xmlS !=null && !xmlS.equals("")){

int fromuser_s = xmlS.indexOf("<FromUserName><![CDATA[");

int fromuser_e = xmlS.indexOf("]]></FromUserName>");

String fromuser = xmlS.substring(fromuser_s + 23, fromuser_e);

System.out.println("fromuser:"+fromuser);

// 取出目标用户

int touser_s = xmlS.indexOf("<ToUserName><![CDATA[");

int touser_e = xmlS.indexOf("]]></ToUserName>");

String touser = xmlS.substring(touser_s + 21, touser_e);

System.out.println("touser:"+touser);

// 取出发送内容

int content_s = xmlS.indexOf("<Content><![CDATA[");

int content_e = xmlS.indexOf("]]></Content>");

String content = xmlS.substring(content_s + 18, content_e);

System.out.println("content:"+content);

if(content.equals("Hello2BizUser")){//注意:Hello2BizUser是默认关注时发送的内容

        out.print("<xml>");

out.print("    <ToUserName><![CDATA["+fromuser+"]]></ToUserName>");

out.print("    <FromUserName><![CDATA["+touser+"]]></FromUserName>");

out.print("    <CreateTime>"+new Date().getTime()+"</CreateTime>");

out.print("    <MsgType><![CDATA[text]]></MsgType>");

out.print("    <Content><![CDATA[  额.....没能成功识别,元芳淡定的说,“有错别字,换个字试试!]]></Content>");

out.print("    <FuncFlag>0</FuncFlag>");

out.print("</xml>"); 

            }

%>

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值