40 lines
1.1 KiB
Java
40 lines
1.1 KiB
Java
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<RequiredToken> {
|
|
|
|
@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;
|
|
}
|
|
}
|