From 144949a2a1b16aaed61d7a4b6411294eada82229 Mon Sep 17 00:00:00 2001 From: Stormeye Wu Date: Tue, 19 Mar 2019 13:43:04 +0800 Subject: [PATCH] =?UTF-8?q?[=E5=BE=AE=E4=BF=A1=E7=AC=AC=E4=B8=89=E6=96=B9?= =?UTF-8?q?=E7=99=BB=E5=BD=95][=E4=BF=AE=E6=94=B9]:=E7=AC=AC=E4=B8=80?= =?UTF-8?q?=E7=A7=8D=E6=96=B9=E6=B3=95=E8=AF=95=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/WechatLoginController.java | 31 ++++++++++++++----- 1 file changed, 23 insertions(+), 8 deletions(-) diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/WechatLoginController.java b/mallinkAdmin/src/main/java/com/iformall/controller/WechatLoginController.java index 7e47f9d4c..605be155c 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/WechatLoginController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/WechatLoginController.java @@ -78,13 +78,8 @@ public class WechatLoginController extends BaseController { log.debug("[" + getIpAddr() + "] MallUserInfoController::login"); String host = request.getHeader("host"); log.debug("Host: " + host); - String rUrl = ""; - try { - rUrl = URLEncoder.encode("https://mall.youlane.cn/api/wechat/callback","utf-8"); - } catch (UnsupportedEncodingException e) { - log.error(e.getMessage()); - } - String wechatUrl = wxMpService.buildQrConnectUrl("https://mall.youlane.cn/api/wechat/callback", "snsapi_login", "111"); + host = getHost(host); + String wechatUrl = wxMpService.buildQrConnectUrl("https://"+host+"/api/wechat/callback", "snsapi_login", "111"); try { response.sendRedirect(wechatUrl); } catch (IOException e) { @@ -92,6 +87,22 @@ public class WechatLoginController extends BaseController { } } + private String getHost(String host) { + if(host.contains("iformall.com")) { + if(host.contains("admintest")) { + host = "admin.malls.iformall.com"; + } else { + host = "admintest.malls.iformall.com"; + } + + } else if(host.contains("youlane.cn")) { + host = "mall.youlane.cn"; + } else { + host = "admin.malls.iformall.com"; + } + return host; + } + @ApiOperation(value = "微信网页登录回调", notes = "请配置此callback到网页redirect_uri") @GetMapping("callback") @ResponseBody @@ -100,10 +111,14 @@ public class WechatLoginController extends BaseController { String host = request.getHeader("host"); log.debug("host: " + host); log.debug("code: " + code); + host = getHost(host); try { WxMpOAuth2AccessToken accessToken = wxMpService.oauth2getAccessToken(code); log.info("accessToken: " + accessToken.getAccessToken() + ", openId: " + accessToken.getOpenId() + ", unionId: " + accessToken.getUnionId()); + accessToken = wxMpService.oauth2refreshAccessToken(accessToken.getRefreshToken()); + log.info("accessToken: " + accessToken.getAccessToken() + ", openId: " + accessToken.getOpenId() + ", unionId: " + accessToken.getUnionId()); + // 获取 用户信息 WxMpUser mpUser = wxMpService.oauth2getUserInfo(accessToken, null); if(mpUser != null) { @@ -162,7 +177,7 @@ public class WechatLoginController extends BaseController { if(codeObj == null) { log.info("用户登录成功,切换主页"); try { - response.sendRedirect("https://mall.youlane.cn/#/layout"); + response.sendRedirect("https://"+host+"/#/layout"); } catch (Exception e) { log.error(e.getMessage()); }