微信开发者测试公众号申请:
https://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=sandbox/login
此处使用jfinal-weixin框架进行业务开发。
进去第一步就是设置接口配置信息,在开发者后台接口中进行安全验证:
输入url和token后,微信后台会向公众号后台发送一个get请求,具体为:
/?
signature=ae09bb2babf229712819eb64769b2bc49414588e&
nonce=1560965544&
echostr=1310282270889700342&
timestamp=1537106006
通过阅读官方开发文档获取业务处理流程:
由于jfinal-weixin提供了方法,所以直接贴代码即可:
// 先提取参数
String signature = "";
String timestamp = "";
String nonce = "";
String echostr = "";
// 通过配置文件加载预先设置好的token
String TOKEN = ApiConfigKit.getApiConfig().getToken();
// 根据上图中的流程进行签名验证
String array[] = {TOKEN, timestamp, nonce};
Arrays.sort(array);
String tempStr = new StringBuilder().append(array[0] + array[1] + array[2]).toString();
tempStr = HashKit.sha1(tempStr);
// 获取验证结果
boolean res = tempStr.equalsIgnoreCase(signature);
// 返回结果
if (res) {
renderText(echostr);
} else {
renderText("");
}
至此,接口配置验证已经通过。