From 290576620dcd7692318bc751b7bbc9960ca34c8f Mon Sep 17 00:00:00 2001 From: "kuang.yife" Date: Fri, 14 Jun 2024 15:28:46 +0800 Subject: [PATCH] =?UTF-8?q?=E5=BE=AE=E4=BF=A1=E7=9A=84=E5=87=A0=E4=B8=AA?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../web/controller/tool/WxController.java | 18 ++++++++++++++++++ .../com/playlet/web/service/WxService.java | 4 ++++ .../web/service/impl/WxServiceImpl.java | 18 ++++++++++++++++++ 3 files changed, 40 insertions(+) diff --git a/playlet-admin/src/main/java/com/playlet/web/controller/tool/WxController.java b/playlet-admin/src/main/java/com/playlet/web/controller/tool/WxController.java index 796a449..fd19c51 100644 --- a/playlet-admin/src/main/java/com/playlet/web/controller/tool/WxController.java +++ b/playlet-admin/src/main/java/com/playlet/web/controller/tool/WxController.java @@ -29,5 +29,23 @@ public class WxController { return Result.success(wxService.getOpenidByCode(code)); } + @ApiOperation(value = "前端入参appid等信息,获取openId", httpMethod = "POST") + @PostMapping("/getOpenidByCodeAndId") + @ResponseBody + public Result getOpenidByCodeAndAppId(@RequestParam(value = "code") String code, + @RequestParam(value = "appId") String appId, + @RequestParam(value = "secret") String secret){ + return Result.success(wxService.getOpenidByCode(code, appId, secret)); + } + + @ApiOperation(value = "获取用户信息", httpMethod = "POST") + @PostMapping("/getWxInfo") + @ResponseBody + public Result getWxInfo(@RequestParam(value = "openId") String openId, + @RequestParam(value = "accessToken") String accessToken){ + return Result.success(wxService.getWxInfo(openId, accessToken)); + } + + } diff --git a/playlet-admin/src/main/java/com/playlet/web/service/WxService.java b/playlet-admin/src/main/java/com/playlet/web/service/WxService.java index 9beb27e..3afb1c7 100644 --- a/playlet-admin/src/main/java/com/playlet/web/service/WxService.java +++ b/playlet-admin/src/main/java/com/playlet/web/service/WxService.java @@ -10,4 +10,8 @@ public interface WxService { String getOpenidByCode(String code); + String getOpenidByCode(String code, String appId, String secret); + + String getWxInfo(String openId, String accessToken); + } diff --git a/playlet-admin/src/main/java/com/playlet/web/service/impl/WxServiceImpl.java b/playlet-admin/src/main/java/com/playlet/web/service/impl/WxServiceImpl.java index d7cdc25..f2fe2b4 100644 --- a/playlet-admin/src/main/java/com/playlet/web/service/impl/WxServiceImpl.java +++ b/playlet-admin/src/main/java/com/playlet/web/service/impl/WxServiceImpl.java @@ -42,4 +42,22 @@ public class WxServiceImpl implements WxService { } return null; } + + @Override + public String getOpenidByCode(String code, String appId, String secret) { + String url = "https://api.weixin.qq.com/sns/jscode2session?appid="+ appId + "&secret=" + secret + "&js_code=" + code + "&grant_type=authorization_code"; + log.info("调用微信获取openId,入参url:{}", url); + String result = HttpUtils.sendGet(url); + log.info("调用微信获取openId,响应内容:{}", result); + return result; + } + + @Override + public String getWxInfo(String openId, String accessToken) { + String url = "https://api.weixin.qq.com/sns/userinfo?access_token=" + accessToken + "&openid=" + openId + "&lang=zh_CN"; + log.info("调用微信获取用户信息,入参url:{}", url); + String result = HttpUtils.sendGet(url); + log.info("调用微信获取用户信息,响应内容:{}", result); + return result; + } }