Просмотр исходного кода

[微信第三方登录][修改]:登录跳转

release_toaliyun_real
Stormeye Wu 7 лет назад
Родитель
Сommit
d750c3c01e
1 измененных файлов: 15 добавлений и 10 удалений
  1. +15
    -10
      mallinkAdmin/src/main/java/com/iformall/controller/WechatLoginController.java

+ 15
- 10
mallinkAdmin/src/main/java/com/iformall/controller/WechatLoginController.java Просмотреть файл

@@ -41,20 +41,16 @@ public class WechatLoginController extends BaseController {
@ApiOperation(value = "微信网页登录回调", notes = "请配置此callback到网页redirect_uri")
@GetMapping("callback")
@ResponseBody
public ResultData getAccessToken(String code, HttpServletRequest request, HttpServletResponse response) {
public ResultData getAccessToken(String code, String state, HttpServletRequest request, HttpServletResponse response) {
log.debug("[" + getIpAddr() + "] WechatLoginController::getAccessToken");
log.debug("code: " + code);
ResultData r = new ResultData();
try {
WxMpOAuth2AccessToken accessToken = wxMpService.oauth2getAccessToken(code);
log.debug("accessToken: " + accessToken.getAccessToken() + ", openId: " + accessToken.getOpenId() + ", unionId: " + accessToken.getUnionId());
// 保存 access_token 到 cookie,两小时过期
Cookie accessTokencookie = new Cookie("accessToken", accessToken.getAccessToken());
accessTokencookie.setMaxAge(60 *2);
response.addCookie(accessTokencookie);

// 保存 openId 到 cookie,一小时过期
Cookie openIdCookie = new Cookie("openId", accessToken.getOpenId());
openIdCookie.setMaxAge(60 *2);
openIdCookie.setMaxAge(60);
response.addCookie(openIdCookie);

// check user openid 是否是已授权用户
@@ -75,8 +71,12 @@ public class WechatLoginController extends BaseController {
if(menus != null) {
info.setMenus(menus);
}
r.data = info;
Cookie unameCookie = new Cookie("uname", info.getUsername());
unameCookie.setMaxAge(60);
response.addCookie(openIdCookie);
response.sendRedirect(request.getContextPath() + "/#/");
} catch (Exception e) {
log.error(e.getMessage());
return new ResultData(ResultData.ERROR, "用户名或者密码错误");
}
} else {
@@ -89,9 +89,14 @@ public class WechatLoginController extends BaseController {
map.put("accessToken", accessToken.getAccessToken());
map.put("openId", accessToken.getOpenId());
//map.put("unionId", accessToken.getUnionId());
r.data = map;
// r.data = map;
// 跳转登录页面
//response.sendRedirect(request.getContextPath() + "/student/html/index.min.html#/bind?type="+Constants.LOGIN_TYPE_WECHAT);
try {
response.sendRedirect(request.getContextPath() + "/#/");
} catch (Exception e) {
log.error(e.getMessage());
return new ResultData(ResultData.ERROR, "用户名或者密码错误");
}
}
return r;
} catch (WxErrorException e) {


Загрузка…
Отмена
Сохранить