小程序(消息推送配置)与服务号(服务器配置)通用配置方法都是一样的。

以公众号为例子 设置与开发-》基础设置-》服务器配置

一:在服务器后台添加一个验证类(接口)

package com.jeesite.modules.sys.web;import com.jeesite.common.lang.StringUtils;
import com.jeesite.common.web.BaseController;
import com.jeesite.modules.msg.utils.WeixinMsgPushUtils;
import me.chanjar.weixin.mp.bean.template.WxMpTemplateData;
import me.chanjar.weixin.mp.bean.template.WxMpTemplateMessage;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.dom4j.Document;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.InputStream;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;/*** 微信token验证Controller* @author cgq* @version 2021-04-21*/
@Controller
@RequestMapping(value = "/sys/wxToken")
public class WxTokenController extends BaseController {private static String token = "这里是自定义的token,需和你提交的token一致";/*** 校验签名** @param signature*            签名* @param timestamp*            时间戳* @param nonce*            随机数* @return 布尔值*/public static boolean checkSignature(String signature, String timestamp, String nonce) {String checktext = null;if (null != signature) {// 对ToKen,timestamp,nonce 按字典排序String[] paramArr = new String[] { token, timestamp, nonce };Arrays.sort(paramArr);// 将排序后的结果拼成一个字符串String content = paramArr[0].concat(paramArr[1]).concat(paramArr[2]);try {MessageDigest md = MessageDigest.getInstance("SHA-1");// 对接后的字符串进行sha1加密byte[] digest = md.digest(content.toString().getBytes());checktext = byteToStr(digest);} catch (NoSuchAlgorithmException e) {e.printStackTrace();}}// 将加密后的字符串与signature进行对比return checktext != null ? checktext.equals(signature.toUpperCase()) : false;}/*** 将字节数组转化为16进制字符串** @param byteArrays*            字符数组* @return 字符串*/private static String byteToStr(byte[] byteArrays) {String str = "";for (int i = 0; i < byteArrays.length; i++) {str += byteToHexStr(byteArrays[i]);}return str;}/*** 将字节转化为十六进制字符串** @param myByte*            字节* @return 字符串*/private static String byteToHexStr(byte myByte) {char[] Digit = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F' };char[] tampArr = new char[2];tampArr[0] = Digit[(myByte >>> 4) & 0X0F];tampArr[1] = Digit[myByte & 0X0F];String str = new String(tampArr);return str;}private static final Log log = LogFactory.getLog(WxTokenController.class);/*** 微信token验证*/@RequestMapping(value = "getToken")@GetMapping(produces = "text/plain;charset=utf-8")@ResponseBodypublic void getToken(HttpServletRequest request, HttpServletResponse response) {try {log.debug("__________signature["+request.getParameter("signature")+"]_____________");if (StringUtils.isNotBlank(request.getParameter("signature"))) {String signature = request.getParameter("signature");String timestamp = request.getParameter("timestamp");String nonce = request.getParameter("nonce");String echostr = request.getParameter("echostr");if (checkSignature(signature, timestamp, nonce)) {log.debug("数据源为微信后台,将echostr["+echostr+"]返回!___000000000__");response.getOutputStream().println(echostr);}}} catch (Exception e) {e.printStackTrace();}}
}

二:填写服务器配置

三:完成提交

微信公众平台的:服务器配置,消息推送配置相关推荐

  1. 微信公众平台向特定用户推送消息

    一.首先需要将微信的openid与系统用户绑定. 在用户关注公众平台的时候,回复一个链接,要求用户绑定,可以设计如下消息进行回复,(openid最好进行加密处理,后者还需要用这个字段绑定fakeid) ...

  2. Java给特定用户发通知_微信公众平台向特定用户推送消息

    最近研究微信公众平台,这里整理了一下向特定用户推送消息的思路 一.首先需要将微信的openid与系统用户绑定. 在用户关注公众平台的时候,回复一个链接,要求用户绑定,可以设计如下消息进行回复,(ope ...

  3. 微信公众号开发(消息推送)

    文章目录 微信公众号开发 运行效果 微信公众号简介 注册微信公众号 注册测试公众号 搭建微信本地调试环境 微信公众号接入(校验签名) 给指定用户推送消息 网页授权获取用户openid 给指定用户发送模 ...

  4. 微信公众号实现模板消息推送

    一.首先要获得接收模板消息用户的 openid 和 accss_token,可参考微信公众号获取用户基本信息 二.发布推送 public function sendMsg() {$url = &quo ...

  5. 公众号 接收规则 消息_微信公众平台 发送模板消息(Java接口开发)

    前言:最近一直再弄微信扫码推送图文消息和模板消息发送,感觉学习到了不少东西.今天先总结一下微信公众平台模板消息的发送.因为这个自己弄了很久,开始很多地方不明白,所以今天好好总结一下. 微信公众平台技术 ...

  6. java 模板接口开发_微信公众平台 发送模板消息(Java接口开发)

    前言:最近一直再弄微信扫码推送图文消息和模板消息发送,感觉学习到了不少东西.今天先总结一下微信公众平台模板消息的发送.因为这个自己弄了很久,开始很多地方不明白,所以今天好好总结一下. 微信公众平台技术 ...

  7. 微信小程序开发消息推送配置教程

    微信小程序开发消息推送配置教程 微信小程序开发消息推送配置这一块网上都是PHP居多,由于用egg.js写了一套验证方法. 第一步:填写服务器配置 登录微信小程序官网后,在小程序官网的"设置- ...

  8. 微信消息推送配置详解 JAVA后端版本

    最近公司做小程序需要用到消息推送,笔者在一路采坑做完后几个笔记,希望能帮到大家少采坑. 如果你连小程序都没有注册也没有做,那就不要继续看了....... 微信官方文档:  微信消息推送      微信 ...

  9. TP6 微信小程序消息推送配置Token校验失败200302

    ThinkPHP6 微信小程序消息推送配置时报错: {"ret":200302,"err_msg":"verify token fail"} ...

最新文章

  1. pandas使用replace函数将dataframe指定数据列中的特定字符串进行自定义替换(replace substring in dataframe column values)
  2. *[hackerrank]Maximizing XOR
  3. ElasticSearch 2.2 升级 6.2.4
  4. 权限系统设计模型分析(DAC,MAC,RBAC,ABAC)
  5. EOS 共识机制 (1)DPOS共识介绍
  6. android开发中,可能会导致内存泄露的问题
  7. 提权学习之旅——Linux操作系统提权
  8. 嵌入式linux系统移植的四大步骤_如何移植开源软件到嵌入式Linux系统
  9. python命令行运行模式_[Python] 命令行模式阅读博客园的博文
  10. colorpix取色小工具_Python版的取色器
  11. OO生存指.....抱歉无法生存
  12. Qtcreator配置Ros环境
  13. c#中如何删除数组中的元素_C中的数组
  14. c语言怎么编程打开文件,怎么用c语言打开文件
  15. VS2017编译配置和使用LOG4CPP
  16. 小黄鸡 java_用java实现Simsimi小黄鸡接口
  17. 静雅学校有高中吗有计算机,涿州靖雅中学
  18. 《广播电视节目制作经营许可证》申请流程
  19. [统计学理论基础] 方差 协方差 标准差
  20. composer查看镜像地址

热门文章

  1. MRT与MRTS工具官宣退休,推荐使用HEG
  2. hyit 第二届ctf校赛wp
  3. C 语言http GET请求 超小纯净下载工具 (暂时只支持http,支持大文件下载)第三季
  4. 信息收集之查找GitHub作者邮箱
  5. java在一台电脑上装两个或多个jdk如何配置环境变量,并实现jdk切换
  6. macbook安装chatglm2-6b
  7. 安卓app添加底电耗模式和待机模式白名单
  8. 《当幸福来敲门》的生活指向...
  9. 匹配滤波处理不同距离维回波信号
  10. 流量复制工具gor使用简介