记得上下班打卡 | git大法好,push需谨慎

Commit 5188597e authored by 姜秀龙's avatar 姜秀龙

refactor(adam): 登出直接从 token 解析 jti

移除多余的 resolveJtiFromRequest,避免 u-tag 与二次 parse 重复逻辑。
Co-authored-by: 's avatarCursor <cursoragent@cursor.com>
parent 4fb161ca
......@@ -20,7 +20,6 @@ import com.liquidnet.service.adam.service.AdamRdmService;
import com.liquidnet.service.adam.service.AdamWechatService;
import com.liquidnet.service.adam.service.IAdamUserService;
import com.liquidnet.service.adam.support.AdamUserSessionSupport;
import io.jsonwebtoken.Claims;
import com.liquidnet.service.base.ErrorMapping;
import com.liquidnet.service.base.ResponseDto;
import com.liquidnet.service.base.UserPathDto;
......@@ -377,10 +376,17 @@ public class AdamLoginController {
public void logout() {
log.info("###logout_uid:{}", CurrentUtil.getCurrentUid());
String jti = resolveJtiFromRequest();
String token = CurrentUtil.getToken();
if (StringUtils.isNotBlank(token)) {
try {
String jti = jwtValidator.parse(token).getId();
if (StringUtils.isNotBlank(jti)) {
adamUserSessionSupport.unbindSession(jti, CurrentUtil.getCurrentUid());
}
} catch (Exception e) {
log.warn("logout parse token failed", e);
}
}
}
@ApiOperationSupport(order = 8)
......@@ -501,26 +507,6 @@ public class AdamLoginController {
return token;
}
private String resolveJtiFromRequest() {
Map<?, ?> claims = CurrentUtil.getTokenClaims();
if (claims != null) {
Object jti = claims.get(CurrentUtil.TOKEN_JTI);
if (jti != null && StringUtils.isNotBlank(jti.toString())) {
return jti.toString();
}
}
String token = CurrentUtil.getToken();
if (StringUtils.isNotBlank(token)) {
try {
Claims parsed = jwtValidator.parse(token);
return parsed.getId();
} catch (Exception e) {
log.warn("logout resolve jti failed", e);
}
}
return null;
}
private ResponseDto<AdamLoginInfoVo> loginVoResponseProcessing(AdamLoginInfoVo loginInfoVo) {
AdamUserInfoVo userInfo = loginInfoVo.getUserInfo();
adamRdmService.ratingProvince(userInfo);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment