Browse Source

1、微信推送模板消息;

dev
mh 5 months ago
parent
commit
ea0cfca6b3
  1. 10
      user-service/src/main/java/com/mh/user/config/PrimessionInterceptor.java
  2. 9
      user-service/src/main/java/com/mh/user/controller/wechat/WechatController.java
  3. 13
      user-service/src/main/resources/application-dev.yml

10
user-service/src/main/java/com/mh/user/config/PrimessionInterceptor.java

@ -4,6 +4,7 @@ import com.alibaba.fastjson2.JSON;
import com.alibaba.fastjson2.JSONObject; import com.alibaba.fastjson2.JSONObject;
import com.mh.user.dynamic.datasource.DataSourceContextHolder; import com.mh.user.dynamic.datasource.DataSourceContextHolder;
import com.mh.user.service.SysUserService; import com.mh.user.service.SysUserService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import org.springframework.web.servlet.HandlerInterceptor; import org.springframework.web.servlet.HandlerInterceptor;
@ -16,6 +17,7 @@ import javax.servlet.http.HttpServletResponse;
* @date 2020-09-03 08:44 * @date 2020-09-03 08:44
* @Description 请求拦截器 * @Description 请求拦截器
*/ */
@Slf4j
@Component @Component
public class PrimessionInterceptor implements HandlerInterceptor { public class PrimessionInterceptor implements HandlerInterceptor {
@ -36,20 +38,20 @@ public class PrimessionInterceptor implements HandlerInterceptor {
String token = request.getHeader("token"); String token = request.getHeader("token");
if (token != null && token.contains("token")) { if (token != null && token.contains("token")) {
JSONObject jsonObject = (JSONObject) JSON.parse(token); JSONObject jsonObject = (JSONObject) JSON.parse(token);
System.out.println("header---->" + jsonObject.get("token")); log.info("header---->" + jsonObject.get("token"));
if (jsonObject.get("token") !=null ) { if (jsonObject.get("token") !=null ) {
token = jsonObject.get("token").toString(); token = jsonObject.get("token").toString();
} }
System.out.println(" token==> " + token); log.info(" token==> " + token);
} }
String uri = request.getRequestURI(); String uri = request.getRequestURI();
System.out.println(uri); log.info(uri);
DataSourceContextHolder.setDBType("default"); DataSourceContextHolder.setDBType("default");
// 除了中间库业务的请求都使用多数据源切换 // 除了中间库业务的请求都使用多数据源切换
// if(!(uri.contains("/sysUser") || uri.contains("/sysRole") || uri.contains("/sysMenu") )){ // if(!(uri.contains("/sysUser") || uri.contains("/sysRole") || uri.contains("/sysMenu") )){
// if(token != null){ // if(token != null){
// String userName = JwtTokenUtils.getUsernameFromToken(token); // String userName = JwtTokenUtils.getUsernameFromToken(token);
// System.out.println(userName); // log.info(userName);
// DBEntity dbEntity = sysUserService.queryDBInfo(userName); // DBEntity dbEntity = sysUserService.queryDBInfo(userName);
// dbEntity.setDB_Pwd(AESUtil.AESdecrypt(dbEntity.getDB_Pwd())); // dbEntity.setDB_Pwd(AESUtil.AESdecrypt(dbEntity.getDB_Pwd()));
// // 切换数据源 // // 切换数据源

9
user-service/src/main/java/com/mh/user/controller/wechat/WechatController.java

@ -116,4 +116,13 @@ public class WechatController {
} }
} }
@GetMapping("/getSub")
@ResponseBody
public void pushMsg(@RequestParam("openid") String openId,
@RequestParam("template_id") String templateId,
@RequestParam("action") String action,
@RequestParam("scene") String scene) {
log.info("openId:{},template_id:{},action:{},scene:{}", openId, templateId, action, scene);
}
} }

13
user-service/src/main/resources/application-dev.yml

@ -104,6 +104,19 @@ pagehelper:
support-methods-arguments: true support-methods-arguments: true
params: countSql params: countSql
wechat:
mpAppId: wx5653d0f930e98414
mpAppSecret: 3473cbd80e891e4e7da1b1b71ae3a5a2
redirectUri: https://35gm72cu2458.vicp.fun/wechat/userInfo
# 生成微信授权
authorizedUrl: https://open.weixin.qq.com/connect/oauth2/authorize?appid=mpAppId&redirect_uri=REDIRECT_URI&response_type=code&scope=snsapi_userinfo&state=STATE#wechat_redirect
# 获取code后,请求以下链接获取access_token
access_token: https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=SECRET
# 拉取用户信息(需scope为 snsapi_userinfo)
userinfo: https://api.weixin.qq.com/sns/userinfo?access_token=ACCESS_TOKEN&openid=OPENID&lang=zh_CN
# 消息推送url
pushUrl: https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=ACCESS_TOKEN
baseUrl: https://35gm72cu2458.vicp.fun

Loading…
Cancel
Save