面试/面谈

This commit is contained in:
zhangchenbiao
2024-03-22 14:28:57 +08:00
parent 2f005d64cc
commit 39080c32db
4 changed files with 70 additions and 75 deletions

View File

@@ -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);
} }
} }

View File

@@ -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();

View File

@@ -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

View File

@@ -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 {