面试/面谈
This commit is contained in:
@@ -16,12 +16,6 @@ public class TRTCUtils {
|
|||||||
*/
|
*/
|
||||||
private static final Long expired = 60 * 60 * 24L;
|
private static final Long expired = 60 * 60 * 24L;
|
||||||
|
|
||||||
@Value("${trtc.sdkAppId}")
|
|
||||||
private Long sdkAppId;
|
|
||||||
|
|
||||||
@Value("${trtc.secretKey}")
|
|
||||||
private String key;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 生成 userSig 用于进入会议
|
* 生成 userSig 用于进入会议
|
||||||
* 详见 https://cloud.tencent.com/document/product/647/17275#.E8.B0.83.E8.AF.95.E8.B7.91.E9.80.9A.E9.98.B6.E6.AE.B5.E5.A6.82.E4.BD.95.E8.AE.A1.E7.AE.97-UserSig.EF.BC.9F
|
* 详见 https://cloud.tencent.com/document/product/647/17275#.E8.B0.83.E8.AF.95.E8.B7.91.E9.80.9A.E9.98.B6.E6.AE.B5.E5.A6.82.E4.BD.95.E8.AE.A1.E7.AE.97-UserSig.EF.BC.9F
|
||||||
@@ -36,9 +30,7 @@ public class TRTCUtils {
|
|||||||
return tlsSigAPIv2.genUserSig(userId, expiredTime);
|
return tlsSigAPIv2.genUserSig(userId, expiredTime);
|
||||||
}
|
}
|
||||||
|
|
||||||
public String genUserSig(String userId) {
|
public static void main(String[] args) {
|
||||||
TLSSigAPIv2 tlsSigAPIv2 = new TLSSigAPIv2(sdkAppId, key);
|
System.out.println(genUserSig(1600026212L, "e036b654c665f649f053a01ff6f5652a826980027be298d4d49949f6e26434a5", "6488aeaefa7246de9af141c6c6fdd2c7"));
|
||||||
return tlsSigAPIv2.genUserSig(userId, expired);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -48,10 +48,10 @@ public class SignValidateFilter implements Filter {
|
|||||||
|
|
||||||
private static List<String> patternList =
|
private static List<String> patternList =
|
||||||
Lists.newArrayList("/web/check/ok","/check/ok",
|
Lists.newArrayList("/web/check/ok","/check/ok",
|
||||||
"/partner/mini/program/doc.html","/partner/mini/program/v2/api-docs","/**/test/**",
|
"/xfsg/mini/program/doc.html","/xfsg/mini/program/v2/api-docs","/**/test/**",
|
||||||
"/partner/mini/program/oss/getUploadFileConfig",
|
"/xfsg/mini/program/oss/getUploadFileConfig",
|
||||||
"/partner/mini/program/v1/partnerManage/partner/getIdentityCardInfo",
|
"/xfsg/mini/program/v1/partnerManage/partner/getIdentityCardInfo",
|
||||||
"/**/swagger*/**", "/**/webjars/**","/partner/mini/program/v1/partnerManage/openArea/areaApplyQuery");
|
"/**/swagger*/**", "/**/webjars/**","/xfsg/mini/program/v1/partnerManage/openArea/areaApplyQuery");
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -77,11 +77,16 @@ public class SignValidateFilter implements Filter {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
|
public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
|
||||||
MDC.put(CommonConstants.REQUEST_ID, UUIDUtils.get32UUID());
|
|
||||||
/*HttpServletResponse response = (HttpServletResponse) servletResponse;
|
|
||||||
HttpServletRequest request = (HttpServletRequest) servletRequest;
|
HttpServletRequest request = (HttpServletRequest) servletRequest;
|
||||||
CustomHttpServletRequestWrapper wrapper = (CustomHttpServletRequestWrapper) request;
|
|
||||||
String uri = request.getRequestURI();
|
String uri = request.getRequestURI();
|
||||||
|
if(uri.startsWith("/xfsg/pc")){
|
||||||
|
filterChain.doFilter(servletRequest, servletResponse);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
MDC.put(CommonConstants.REQUEST_ID, UUIDUtils.get32UUID());
|
||||||
|
HttpServletResponse response = (HttpServletResponse) servletResponse;
|
||||||
|
|
||||||
|
CustomHttpServletRequestWrapper wrapper = (CustomHttpServletRequestWrapper) request;
|
||||||
String method = request.getMethod();
|
String method = request.getMethod();
|
||||||
String userStr = "";
|
String userStr = "";
|
||||||
boolean isInWhiteList = excludePath(uri);
|
boolean isInWhiteList = excludePath(uri);
|
||||||
@@ -120,9 +125,9 @@ public class SignValidateFilter implements Filter {
|
|||||||
userStr = JSONObject.toJSONString(partnerUserInfoVO);
|
userStr = JSONObject.toJSONString(partnerUserInfoVO);
|
||||||
log.info("url:{}, userStr:{}", uri, userStr);
|
log.info("url:{}, userStr:{}", uri, userStr);
|
||||||
}
|
}
|
||||||
}*/
|
}
|
||||||
try {
|
try {
|
||||||
//PartnerUserHolder.setUser(userStr);
|
PartnerUserHolder.setUser(userStr);
|
||||||
filterChain.doFilter(servletRequest, servletResponse);
|
filterChain.doFilter(servletRequest, servletResponse);
|
||||||
} finally {
|
} finally {
|
||||||
PartnerUserHolder.removeUser();
|
PartnerUserHolder.removeUser();
|
||||||
|
|||||||
@@ -44,19 +44,14 @@ public class TokenValidateFilter implements Filter {
|
|||||||
private static List<String> patternList =
|
private static List<String> patternList =
|
||||||
|
|
||||||
Lists.newArrayList("/web/check/ok","/check/ok",
|
Lists.newArrayList("/web/check/ok","/check/ok",
|
||||||
"/partner/pc/doc.html","/partner/pc/v2/api-docs","/**/test/**","/partner/pc/feiShuLogin","/partner/pc/oss/getUploadFileConfig",
|
"/xfsg/pc/doc.html","/xfsg/pc/v2/api-docs","/**/test/**","/xfsg/pc/feiShuLogin","/xfsg/pc/oss/getUploadFileConfig",
|
||||||
"/**/swagger*/**", "/**/webjars/**",
|
"/**/swagger*/**", "/**/webjars/**",
|
||||||
//腾讯音视频回调,单独做验签
|
//腾讯音视频回调,单独做验签
|
||||||
"/partner/pc/video/**",
|
"/xfsg/pc/video/**",
|
||||||
//800回调地址暂时不做验证
|
//800回调地址暂时不做验证
|
||||||
"/partner/pc/flow/qualificationReview/callback",
|
"/xfsg/pc/flow/qualificationReview/callback",
|
||||||
"/**/ecSync/ecToApplet/**",
|
"/xfsg/pc/websocket/**",
|
||||||
"/**/ecSync/labelInfo/**",
|
"/xfsg/pc/call/**");
|
||||||
"/**/ecSync/getCrmCreateTime/**",
|
|
||||||
"/**/ecSync/historyLine/**",
|
|
||||||
"/**/ecSync/historyLineTrajectory/**",
|
|
||||||
"/partner/pc/websocket/**",
|
|
||||||
"/partner/pc/call/**");
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param uri
|
* @param uri
|
||||||
@@ -81,52 +76,55 @@ public class TokenValidateFilter implements Filter {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
|
public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
|
||||||
// MDC.put(CommonConstants.REQUEST_ID, UUIDUtils.get32UUID());
|
HttpServletRequest reqs = (HttpServletRequest) servletRequest;
|
||||||
// HttpServletResponse response = (HttpServletResponse) servletResponse;
|
String uri = reqs.getRequestURI();
|
||||||
// HttpServletRequest reqs = (HttpServletRequest) servletRequest;
|
if(uri.startsWith("/xfsg/mini")){
|
||||||
// String uri = reqs.getRequestURI();
|
|
||||||
// String method = reqs.getMethod();
|
|
||||||
// String userStr = "";
|
|
||||||
// LoginUserInfo currentUser = null;
|
|
||||||
// boolean isInWhiteList = excludePath(uri);
|
|
||||||
// String accessToken = reqs.getHeader("accessToken");
|
|
||||||
// String key = MessageFormat.format(CommonConstants.ACCESS_TOKEN_KEY, accessToken);
|
|
||||||
// if(StringUtils.isNotBlank(accessToken)){
|
|
||||||
// userStr = redisUtilPool.getString(key);
|
|
||||||
// if(StringUtils.isNotBlank(userStr)){
|
|
||||||
// currentUser = JSON.parseObject(userStr, LoginUserInfo.class);
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
// log.info("url:{}", uri);
|
|
||||||
// if ( !isInWhiteList && !method.equals("OPTIONS")) {
|
|
||||||
// if (StringUtils.isEmpty(accessToken)) {
|
|
||||||
// response.setStatus(HttpStatus.OK.value());
|
|
||||||
// response.getWriter().write(JSON.toJSONString(
|
|
||||||
// ResponseResult.fail(ErrorCodeEnum.ACCESS_TOKEN_INVALID)));
|
|
||||||
// return;
|
|
||||||
// }
|
|
||||||
// if (Objects.isNull(currentUser)) {
|
|
||||||
// response.setStatus(HttpStatus.OK.value());
|
|
||||||
// response.getWriter().write(JSON.toJSONString(
|
|
||||||
// ResponseResult.fail(ErrorCodeEnum.ACCESS_TOKEN_INVALID)));
|
|
||||||
// return;
|
|
||||||
// }
|
|
||||||
// log.info("url:{}, access_token:{}, userId:{}, username:{}", uri, accessToken, currentUser.getUserId(), currentUser.getName());
|
|
||||||
// }
|
|
||||||
// if(StringUtils.isBlank(userStr) && !isInWhiteList){
|
|
||||||
// response.setStatus(HttpStatus.OK.value());
|
|
||||||
// response.getWriter().write(JSON.toJSONString(
|
|
||||||
// ResponseResult.fail(ErrorCodeEnum.ACCESS_TOKEN_INVALID)));
|
|
||||||
// return;
|
|
||||||
// }
|
|
||||||
// try {
|
|
||||||
// CurrentUserHolder.setUser(userStr);
|
|
||||||
filterChain.doFilter(servletRequest, servletResponse);
|
filterChain.doFilter(servletRequest, servletResponse);
|
||||||
// } finally {
|
return;
|
||||||
// CurrentUserHolder.removeUser();
|
}
|
||||||
// MDC.clear();
|
MDC.put(CommonConstants.REQUEST_ID, UUIDUtils.get32UUID());
|
||||||
// }
|
HttpServletResponse response = (HttpServletResponse) servletResponse;
|
||||||
//filterChain.doFilter(servletRequest, servletResponse);
|
String method = reqs.getMethod();
|
||||||
|
String userStr = "";
|
||||||
|
LoginUserInfo currentUser = null;
|
||||||
|
boolean isInWhiteList = excludePath(uri);
|
||||||
|
String accessToken = "1d1c34451b51e7180445b74c49b7ab09";//reqs.getHeader("accessToken");
|
||||||
|
String key = MessageFormat.format(CommonConstants.ACCESS_TOKEN_KEY, accessToken);
|
||||||
|
if(StringUtils.isNotBlank(accessToken)){
|
||||||
|
userStr = redisUtilPool.getString(key);
|
||||||
|
if(StringUtils.isNotBlank(userStr)){
|
||||||
|
currentUser = JSON.parseObject(userStr, LoginUserInfo.class);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
log.info("url:{}", uri);
|
||||||
|
if ( !isInWhiteList && !method.equals("OPTIONS")) {
|
||||||
|
if (StringUtils.isEmpty(accessToken)) {
|
||||||
|
response.setStatus(HttpStatus.OK.value());
|
||||||
|
response.getWriter().write(JSON.toJSONString(
|
||||||
|
ResponseResult.fail(ErrorCodeEnum.ACCESS_TOKEN_INVALID)));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (Objects.isNull(currentUser)) {
|
||||||
|
response.setStatus(HttpStatus.OK.value());
|
||||||
|
response.getWriter().write(JSON.toJSONString(
|
||||||
|
ResponseResult.fail(ErrorCodeEnum.ACCESS_TOKEN_INVALID)));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
log.info("url:{}, access_token:{}, userId:{}, username:{}", uri, accessToken, currentUser.getUserId(), currentUser.getName());
|
||||||
|
}
|
||||||
|
if(StringUtils.isBlank(userStr) && !isInWhiteList){
|
||||||
|
response.setStatus(HttpStatus.OK.value());
|
||||||
|
response.getWriter().write(JSON.toJSONString(
|
||||||
|
ResponseResult.fail(ErrorCodeEnum.ACCESS_TOKEN_INVALID)));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
try {
|
||||||
|
CurrentUserHolder.setUser(userStr);
|
||||||
|
filterChain.doFilter(servletRequest, servletResponse);
|
||||||
|
} finally {
|
||||||
|
CurrentUserHolder.removeUser();
|
||||||
|
MDC.clear();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@@ -29,7 +29,7 @@ import java.util.List;
|
|||||||
* @date 2024-03-15 16:04
|
* @date 2024-03-15 16:04
|
||||||
*/
|
*/
|
||||||
@RestController
|
@RestController
|
||||||
@RequestMapping("/interview")
|
@RequestMapping("/mini/interview")
|
||||||
@Api(tags = "加盟商端-面试&面谈")
|
@Api(tags = "加盟商端-面试&面谈")
|
||||||
@Slf4j
|
@Slf4j
|
||||||
public class LineInterviewController {
|
public class LineInterviewController {
|
||||||
|
|||||||
Reference in New Issue
Block a user