|
@@ -5,9 +5,6 @@ import com.lantone.common.constant.AuthConstant;
|
|
|
import com.lantone.common.domain.UserDto;
|
|
|
import com.nimbusds.jose.JWSObject;
|
|
|
|
|
|
-import java.text.ParseException;
|
|
|
-import java.util.Map;
|
|
|
-
|
|
|
/**
|
|
|
* @Description: 用户工具类
|
|
|
* @author: rengb
|
|
@@ -20,33 +17,35 @@ public class SysUserUtils {
|
|
|
*
|
|
|
* @return
|
|
|
*/
|
|
|
- public static String getCurrentToken() {
|
|
|
- Map<String, String> header = HttpUtils.getHeaders(HttpUtils.getHttpServletRequest());
|
|
|
- return header.get(AuthConstant.JWT_TOKEN_HEADER);
|
|
|
+ public static String getToken() {
|
|
|
+ return HttpUtils.getHeader(AuthConstant.JWT_TOKEN_HEADER);
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
- * 从token中解析出用户信息字符串
|
|
|
+ * 从token中解析出用户信息
|
|
|
*
|
|
|
* @param token
|
|
|
* @return
|
|
|
- * @throws ParseException
|
|
|
*/
|
|
|
- public static String getUserStrByToken(String token) throws ParseException {
|
|
|
- String realToken = token.replace(AuthConstant.JWT_TOKEN_PREFIX, "");
|
|
|
- JWSObject jwsObject = JWSObject.parse(realToken);
|
|
|
- return jwsObject.getPayload().toString();
|
|
|
+ public static UserDto getUserByToken(String token) {
|
|
|
+ UserDto userDto = null;
|
|
|
+ try {
|
|
|
+ String realToken = token.replace(AuthConstant.JWT_TOKEN_PREFIX, "");
|
|
|
+ JWSObject jwsObject = JWSObject.parse(realToken);
|
|
|
+ userDto = JSONUtil.toBean(jwsObject.getPayload().toString(), UserDto.class);
|
|
|
+ } catch (Exception e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ }
|
|
|
+ return userDto;
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
- * 获取当前用户
|
|
|
+ * 获取当前请求的用户
|
|
|
*
|
|
|
* @return
|
|
|
*/
|
|
|
public static UserDto getCurrentUser() {
|
|
|
- Map<String, String> header = HttpUtils.getHeaders(HttpUtils.getHttpServletRequest());
|
|
|
- UserDto userDto = JSONUtil.toBean(header.get(AuthConstant.USER_TOKEN_HEADER), UserDto.class);
|
|
|
- return userDto;
|
|
|
+ return getUserByToken(getToken());
|
|
|
}
|
|
|
|
|
|
/**
|
|
@@ -55,7 +54,8 @@ public class SysUserUtils {
|
|
|
* @return
|
|
|
*/
|
|
|
public static String getCurrentPrinciple() {
|
|
|
- return getCurrentUser().getUsername();
|
|
|
+ UserDto userDto = getCurrentUser();
|
|
|
+ return userDto == null ? null : userDto.getUsername();
|
|
|
}
|
|
|
|
|
|
/**
|
|
@@ -64,7 +64,8 @@ public class SysUserUtils {
|
|
|
* @return
|
|
|
*/
|
|
|
public static String getCurrentPrincipleID() {
|
|
|
- return getCurrentUser().getId().toString();
|
|
|
+ UserDto userDto = getCurrentUser();
|
|
|
+ return userDto == null ? null : userDto.getId().toString();
|
|
|
}
|
|
|
|
|
|
/**
|