update - 增加日志

This commit is contained in:
wangli 2024-02-19 14:29:31 +08:00
parent 1ce361943b
commit 80d68bf482

View File

@ -1,18 +1,24 @@
package cn.axzo.workflow.server.common.interceptor;
import cn.axzo.workflow.core.common.exception.WorkflowEngineException;
import cn.axzo.workflow.core.repository.entity.ExtAxProperty;
import cn.axzo.workflow.core.service.ExtAxPropertyService;
import lombok.extern.slf4j.Slf4j;
import org.apache.maven.artifact.versioning.DefaultArtifactVersion;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import org.springframework.util.StringUtils;
import org.springframework.web.servlet.HandlerInterceptor;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.Objects;
import static cn.axzo.workflow.client.config.FeignRequestInterceptor.HEADER_API_VERSION;
import static cn.axzo.workflow.client.config.FeignRequestInterceptor.HEADER_HTTP_CLIENT;
import static cn.axzo.workflow.client.config.FeignRequestInterceptor.HEADER_HTTP_CLIENT_VALUE;
import static cn.axzo.workflow.client.config.FeignRequestInterceptor.HEADER_SERVER_NAME;
import static cn.axzo.workflow.core.common.code.OtherRespCode.CLIENT_VERSION_SUPPORT;
/**
* 客户端与服务端的版本比较
@ -30,24 +36,26 @@ public class RequestHeaderContextInterceptor implements HandlerInterceptor {
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
log.info("request uri : {}", request.getRequestURI());
// if (Objects.equals(HEADER_HTTP_CLIENT_VALUE, request.getHeader(HEADER_HTTP_CLIENT))) {
// String headerClientVersion = request.getHeader(HEADER_API_VERSION);
// DefaultArtifactVersion clientVersion = new DefaultArtifactVersion(headerClientVersion);
// DefaultArtifactVersion serverVersion = new DefaultArtifactVersion(serviceVersion);
// if (clientVersion.compareTo(serverVersion) >= 0) {
//
// recordClientInfo(request, headerClientVersion, clientVersion);
//
// return true;
// } else {
// throw new WorkflowEngineException(CLIENT_VERSION_SUPPORT, serviceVersion);
// }
// }
// if (!request.getRequestURI().contains("/web/") && !request.getRequestURI().contains("checkDeath")
// && !StringUtils.hasText(request.getHeader(HEADER_HTTP_CLIENT))) {
// throw new WorkflowEngineException(CLIENT_VERSION_SUPPORT, serviceVersion);
// }
if (Objects.equals(HEADER_HTTP_CLIENT_VALUE, request.getHeader(HEADER_HTTP_CLIENT))) {
String headerClientVersion = request.getHeader(HEADER_API_VERSION);
DefaultArtifactVersion clientVersion = new DefaultArtifactVersion(headerClientVersion);
DefaultArtifactVersion serverVersion = new DefaultArtifactVersion(serviceVersion);
if (clientVersion.compareTo(serverVersion) >= 0) {
recordClientInfo(request, headerClientVersion, clientVersion);
return true;
} else {
log.info("request uri : {}", request.getRequestURI());
throw new WorkflowEngineException(CLIENT_VERSION_SUPPORT, serviceVersion);
}
}
// feignApi 才需要检查版本
if (!request.getRequestURI().contains("/web/") && !request.getRequestURI().contains("checkDeath")
&& !StringUtils.hasText(request.getHeader(HEADER_HTTP_CLIENT))) {
log.info("request uri : {}", request.getRequestURI());
throw new WorkflowEngineException(CLIENT_VERSION_SUPPORT, serviceVersion);
}
return true;
}