校验token

This commit is contained in:
六如
2025-02-27 20:27:14 +08:00
parent 46110d9f4f
commit e5e1e00b9c
3 changed files with 12 additions and 8 deletions

View File

@@ -47,9 +47,10 @@ public interface RouteInterceptor {
* 是否匹配返回true执行拦截器默认true * 是否匹配返回true执行拦截器默认true
* *
* @param context context * @param context context
* @param apiInfoDTO 接口信息
* @return 返回true执行拦截器 * @return 返回true执行拦截器
*/ */
default boolean match(ApiRequestContext context) { default boolean match(ApiRequestContext context, ApiInfoDTO apiInfoDTO) {
return true; return true;
} }
} }

View File

@@ -19,11 +19,6 @@ import org.springframework.stereotype.Component;
public class TokenValidateInterceptor implements RouteInterceptor { public class TokenValidateInterceptor implements RouteInterceptor {
@Override @Override
public void preRoute(ApiRequestContext context, ApiInfoDTO apiInfoDTO) { public void preRoute(ApiRequestContext context, ApiInfoDTO apiInfoDTO) {
Integer isNeedToken = apiInfoDTO.getIsNeedToken();
if (YesOrNoEnum.of(isNeedToken) == YesOrNoEnum.NO) {
return;
}
// 走到这里token肯定有值 // 走到这里token肯定有值
String appAuthToken = context.getApiRequest().getAppAuthToken(); String appAuthToken = context.getApiRequest().getAppAuthToken();
@@ -32,6 +27,12 @@ public class TokenValidateInterceptor implements RouteInterceptor {
} }
} }
@Override
public boolean match(ApiRequestContext context, ApiInfoDTO apiInfoDTO) {
Integer isNeedToken = apiInfoDTO.getIsNeedToken();
return YesOrNoEnum.of(isNeedToken) == YesOrNoEnum.YES;
}
/** /**
* 校验token是否合法 * 校验token是否合法
* *

View File

@@ -121,9 +121,11 @@ public class RouteServiceImpl implements RouteService {
protected void doPreRoute(ApiRequestContext apiRequestContext, ApiInfoDTO apiInfoDTO) { protected void doPreRoute(ApiRequestContext apiRequestContext, ApiInfoDTO apiInfoDTO) {
for (RouteInterceptor routeInterceptor : routeInterceptors) { for (RouteInterceptor routeInterceptor : routeInterceptors) {
if (routeInterceptor.match(apiRequestContext, apiInfoDTO)) {
routeInterceptor.preRoute(apiRequestContext, apiInfoDTO); routeInterceptor.preRoute(apiRequestContext, apiInfoDTO);
} }
} }
}
protected Object doAfterRoute(ApiRequestContext apiRequestContext, ApiInfoDTO apiInfoDTO, Object result) { protected Object doAfterRoute(ApiRequestContext apiRequestContext, ApiInfoDTO apiInfoDTO, Object result) {
Object ret = result; Object ret = result;