
club.zhcs.lina.auth.jwt.JWTGenerator Maven / Gradle / Ivy
The newest version!
package club.zhcs.lina.auth.jwt;
import java.util.Map;
import java.util.concurrent.TimeUnit;
import com.auth0.jwt.interfaces.Claim;
/**
*
* @author Kerbores([email protected])
*
*/
public interface JWTGenerator {
/**
* 生成token
*
* @param subject
* 主题
* @param claims
* 附加信息
* @return token
*/
public String token(String subject, Map claims);
/**
* 生成token
*
* @param subject
* 主题
* @param claims
* 附加信息
* @param term
* 有效期
* @param unit
* 有效期单位
* @return
*/
public String token(String subject, Map claims, long term, TimeUnit unit);
/**
* 生成token
*
* @param subject
* 主题
* @return token
*/
public String token(String subject);
/**
* 生成刷新令牌
*
* @param subject
* 主题
* @return refresh token
*/
public String refreshToken(String subject);
/**
* 生成token
*
* @param subject
* 主题
* @param claims
* 附加信息
* @param jti
* jti claim
* @param kid
* kid claim
* @return token
*/
public String token(String subject, Map claims, String jti, String kid);
/**
* 验证token
*
* @param token
* token
* @return 是否同验证
*/
public boolean verify(String token);
/**
* 获取主题
*
* @param token
* token
* @return 主题
*/
public String subject(String token);
/**
* 验证并获取主题
*
* @param token
* token
* @return 主题
*/
public String verifiedSubject(String token);
/**
* 获取附加信息
*
* @param token
* token
* @param name
* claim name
* @return claim
*/
public Claim claim(String token, String name);
public Map claims(String token);
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy