BAE的JAVA还在内测的时候,抱着好奇的态度发邮件申请了内测权限,当时折腾了一天,然后就没折腾了。现在BAE的JAVA都已经正式开放使用了,我又蛋疼的想写点什么,否则每天仅仅只是工作上的使用,是得不到多大的进步的。

最近微信的公众平台比较火,于是我也想弄个微信来玩玩。如何注册微信公众号?点击之后就可以看到官方的答案了(额,比较坑爹)。

注册之后,可以选择编辑模式和开发模式,这里要说的是开发模式。

首先要开启开发模式必须要进行Token的一个验证,你给出一个地址,微信发送请求,然后你给出相应,就这么简单。虽然说是简单,但是这是事后才说的,官方只有PHP的DEMO,我用JAVA开发的时候各种蛋疼不会弄,不过好在还是弄出来了。

上传代码

以下代码是校验Token的关键代码,其中还有一个SHA1加密的类在附件中,这里就不贴出来了。需要注意的是,这里的类我是继承的HttpServlet,也就是说要进行web.xml的配置,这个就不多说了。

无问题后上传到你的空间,我用的是BAE,大家也可以试试。

package net.binjoo.wechat;

import java.io.IOException;

import java.util.Arrays;

import javax.servlet.ServletException;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import net.binjoo.utils.SHA1;

@SuppressWarnings("serial")

public class WechatCallbackApi extends HttpServlet {

// 自定义 token

private String TOKEN = "这个地方由你自己定义";

public void doGet(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

// 微信加密签名

String signature = request.getParameter("signature");

// 随机字符串

String echostr = request.getParameter("echostr");

// 时间戳

String timestamp = request.getParameter("timestamp");

// 随机数

String nonce = request.getParameter("nonce");

String[] str = { TOKEN, timestamp, nonce };

Arrays.sort(str); // 字典序排序

String bigStr = str[0] + str[1] + str[2];

// SHA1加密

String digest = new SHA1().getDigestOfString(bigStr.getBytes()).toLowerCase();

// 确认请求来至微信

if (digest.equals(signature)) {

response.getWriter().print(echostr);

}

}

}

开启消息接口

进入微信公众平台,选择导航菜单栏中的【高级设置 - 开发模式 - 成为开发者】或者点击这里进入,进入后填写网址URL和Token,其中Token可由可以任意填写,用作生成签名,但必须与WechatCallbackApi类中的常量TOKEN一致,否则不能通过校验,成不了开发者。

一切填写无问题之后,点击提交就可以了。是否通过的结果马上就可以得到响应,希望大家都能够看到【提交成功】的提示。

java微信token验证_JAVA折腾微信公众平台(Token验证)[转]相关推荐

  1. java微信token验证_JAVA折腾微信公众平台(Token验证)

    最近微信的公众平台比较火,于是我也想弄个微信来玩玩.如何注册微信公众号?点击之后就可以看到官方的答案了(额,比较坑爹). 注册之后,可以选择编辑模式和开发模式,这里要说的是开发模式. 首先要开启开发模 ...

  2. php 接入微信 验证,PHP实现微信公众平台企业号验证接口

    这篇文章主要介绍了PHP编程之微信公众平台企业号验证接口,是通过回调操作实现的企业号验证功能接口,需要的朋友可以参考下 本文实例讲述了PHP微信公众平台企业号验证接口.分享给大家供大家参考,具体如下: ...

  3. 微信公众平台企业号验证接口、回调 PHP版

    微信公众平台企业号验证接口.回调 PHP版,本人为了解决这个企业号的验证和发送消息的问题,整整研究了几天时间,因为微信企业号刚推出来,网上资料太少了!后来在一些朋友的帮助下和本人反复调试完善下,终于整 ...

  4. 微信小程序入门10-微信公众号token验证失败

    为了更好的运营公众号,微信官方支持用户自定义实现公众号功能,这里第一步就是配置服务器回调域名,如下图: 如果是SpringBoot项目,我们会写一个如下的Controller类 import lomb ...

  5. 微信公众平台Token验证

    1. 首先给出测试项目的整体目录: 2. CoreServlet类: 当get请求的时候会执行get方法,post请求的时候会执行post方法,分别来处理不同的请求 package com.zjn.s ...

  6. 由SSL证书引发的微信公众平台token验证失败问题

    起因 第一次尝试用java去搭建一个微信公众平台,在验证token的时候遇到了各式各样的问题,很多在网上也没有找到比较合适的说法只能自己一步步尝试,在这里记录分享一下也希望其他的朋友能在遇到类似的问题 ...

  7. JAVA 实现朋友圈_Java实现微信公众平台朋友圈分享功能详细代码

    其实分享的方法在微信官网有较为详细的文档说明,现就其中一些比较绕的步骤进行总结,有问题随时交流哈. 首先微信其实已经自带分享到朋友圈,朋友,qq空间等功能,对于开发微信专门提供了一个接口,可以根据需要 ...

  8. java开发微信设计论文_java+mysql微信的烘焙公众号的设计与实现

    摘要随着社会的发展人们的生活压力逐渐变大,人们日常的生活节奏也急剧加速,由此导致时间的缺少,人与人之间面对面交流的机会也越来越少.然而人类是一种群居生物,随时渴望有着他人的陪伴,这种陪伴不仅仅是物质上 ...

  9. 微信公众平台-token验证失败(域名未备案导致替换方案)

    描述:我使用的是域名访问,但是我的域名并没有经过备案. URL:http://your_domain/{main.py url 映射路径}Token:随便写一个3-32位的字串 {要和handle.p ...

最新文章

  1. centos 7.6安装java_安装 QRadar Community Edition
  2. 高级计算机网络的基本知识
  3. android交叉编译libxml2,Openwrt 交叉编译libxml2(示例代码)
  4. wince中重启网卡
  5. ESXi主机管理内存资源的方式
  6. 前端开发 表单控件高级 0303
  7. python模块:JSON模块
  8. 50个最有价值的数据可视化图表
  9. 导 Kinect2库,opencv库,pcl库
  10. img标签图片自适应的样式
  11. 万字长文 | 关于Filecoin期货与矿机,你想知道的一切都在这
  12. matlab中:错误使用 handle.handle/set 对象无效或已删除
  13. 超融合服务器是什么?和超融合一体机什么区别?
  14. 同质化游戏做出不同点在于背景音乐
  15. OpenCV 图像梯度 :cv2.Sobel(),cv2.Schar(),cv2.Laplacian() + 数据类型设置:cv2.CV_8U,cv2.CV_16S,cv2.CV_64F
  16. 什么是路由器?路由器有什么用?
  17. python标注cad桩位_cad自动进行桩位编号
  18. wiimote 匹配_在Wiimote支持下在iPad上玩SNES游戏
  19. 红米手机使用应用沙盒动态修改位置数据
  20. ec6110刷linux系统,华为DIIEC6110M_VER_C主板救砖纯净系统烧录固件包下载

热门文章

  1. 神经网络与深度学习(一)——机器学习基础
  2. libvlc_media_add_option 函数中的参数设置
  3. 这才是实习生写的代码,你学废了吗
  4. C++顺序结构——小玉买文具
  5. Zabbix基于Dell系统管理OMSA监控物理服务器硬件
  6. Unity 3d 脚本常用事件汇总
  7. Linux01---Linux常用命令
  8. 电脑不识别u盘的解决方法
  9. 2021-2027全球与中国牛肉罐头市场现状及未来发展趋势
  10. jQuery插件之图片预加载