package com.imyeyu.api.annotation; import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpServletResponse; import lombok.extern.slf4j.Slf4j; import com.imyeyu.java.bean.timi.TimiCode; import com.imyeyu.java.bean.timi.TimiException; import com.imyeyu.api.modules.blog.util.UserToken; import com.imyeyu.spring.TimiSpring; import com.imyeyu.spring.annotation.RequiredToken; import com.imyeyu.spring.annotation.RequiredTokenAbstractInterceptor; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; /** * 令牌验证注解处理器 * * @author 夜雨 * @since 2021-08-16 18:07 */ @Slf4j @Component public class RequiredTokenInterceptor extends RequiredTokenAbstractInterceptor { @Autowired private UserToken userToken; public RequiredTokenInterceptor() { super(RequiredToken.class); } @Override protected boolean beforeRun(HttpServletRequest req, HttpServletResponse resp) { if (userToken.isInvalid(TimiSpring.getToken())) { throw new TimiException(TimiCode.ARG_MISS).msgKey("token.illegal"); } return true; } }