public interface Auth2DefaultRequest
AuthDefaultRequest 的扩展, 对外曝露接口authorize(String),getAccessToken(AuthCallback),getUserInfo(AuthToken),getAuthStateCache(),getAuthSource(),login(AuthCallback),getProviderId(),refreshToken(AuthTokenPo),removeStateCacheOfSessionCache(AuthStateCache, AuthSource),generateState(),getAuthTokenPo(Integer, Long, AuthResponse),expireIn2Timestamp(Integer, Integer, AuthTokenPo),responseError(Exception)| 限定符和类型 | 方法和说明 |
|---|---|
String |
authorize(String state)
返回带
state参数的授权url,授权回调时会带上这个state |
static long |
expireIn2Timestamp(Integer timeout,
Integer expireIn)
有效期转时间戳
|
static <T extends AuthTokenPo> |
expireIn2Timestamp(Integer timeout,
Integer expireIn,
T authToken)
有效期转时间戳
|
default String |
generateState()
生成一个用户 id.
|
me.zhyd.oauth.model.AuthToken |
getAccessToken(me.zhyd.oauth.model.AuthCallback authCallback)
获取access token
|
me.zhyd.oauth.config.AuthSource |
getAuthSource()
获取
AuthSource |
me.zhyd.oauth.cache.AuthStateCache |
getAuthStateCache()
获取
AuthStateCache |
static AuthTokenPo |
getAuthTokenPo(Integer timeout,
Long tokenId,
me.zhyd.oauth.model.AuthResponse authResponse)
|
String |
getProviderId()
获取第三方 providerId
|
me.zhyd.oauth.model.AuthUser |
getUserInfo(me.zhyd.oauth.model.AuthToken authToken)
使用token换取用户信息
|
me.zhyd.oauth.model.AuthResponse |
login(me.zhyd.oauth.model.AuthCallback authCallback)
统一的登录入口。
|
AuthTokenPo |
refreshToken(AuthTokenPo authToken)
刷新access token (续期)
|
static void |
removeStateCacheOfSessionCache(me.zhyd.oauth.cache.AuthStateCache authStateCache,
me.zhyd.oauth.config.AuthSource source)
移除 session stateCache 缓存
|
static me.zhyd.oauth.model.AuthResponse |
responseError(Exception e)
处理
AuthDefaultRequest.login(AuthCallback) 发生异常的情况,统一响应参数. |
me.zhyd.oauth.model.AuthResponse login(me.zhyd.oauth.model.AuthCallback authCallback)
AuthDefaultRequest.authorize(String)授权成功后,会跳转到调用方的相关回调方法中
方法的入参可以使用AuthCallback,AuthCallback类中封装好了OAuth2授权回调所需要的参数authCallback - 用于接收回调参数的实体String getProviderId()
me.zhyd.oauth.config.AuthSource getAuthSource()
AuthSourceAuthSourceme.zhyd.oauth.cache.AuthStateCache getAuthStateCache()
AuthStateCacheAuthStateCacheString authorize(String state)
state参数的授权url,授权回调时会带上这个statestate - state 验证授权流程的参数,可以防止csrfme.zhyd.oauth.model.AuthToken getAccessToken(me.zhyd.oauth.model.AuthCallback authCallback)
throws com.xkcoding.http.exception.SimpleHttpException
authCallback - 授权成功后的回调参数com.xkcoding.http.exception.SimpleHttpException - http 异常#getAccessToken(AuthCallback),
AuthDefaultRequest.authorize(String)me.zhyd.oauth.model.AuthUser getUserInfo(me.zhyd.oauth.model.AuthToken authToken)
throws com.xkcoding.http.exception.SimpleHttpException
authToken - token信息com.xkcoding.http.exception.SimpleHttpException - http 异常#getUserInfo(AuthToken)AuthTokenPo refreshToken(AuthTokenPo authToken) throws com.xkcoding.http.exception.SimpleHttpException, me.zhyd.oauth.exception.AuthException, RefreshTokenFailureException
authToken - 登录成功后返回的Token信息com.xkcoding.http.exception.SimpleHttpException - http 异常me.zhyd.oauth.exception.AuthException - 不支持 refresh tokenRefreshTokenFailureException - refresh token 时出现异常default String generateState()
UuidUtils.getUUID()static void removeStateCacheOfSessionCache(@NonNull
me.zhyd.oauth.cache.AuthStateCache authStateCache,
@NonNull
me.zhyd.oauth.config.AuthSource source)
authStateCache - AuthStateCachesource - AuthSource@NonNull static AuthTokenPo getAuthTokenPo(Integer timeout, Long tokenId, me.zhyd.oauth.model.AuthResponse authResponse) throws RefreshTokenFailureException
timeout - HttpConfig.getTimeout() 返回的 AuthResponse, 毫秒tokenId - token idauthResponse - AuthRequest.refresh(AuthToken) 返回的 AuthResponseRefreshTokenFailureException - refresh token 时出现异常static <T extends AuthTokenPo> void expireIn2Timestamp(@NonNull Integer timeout, @Nullable Integer expireIn, @NonNull T authToken)
timeout - HttpConfig.getTimeout(), 单位毫秒expireIn - 有效期authToken - AuthTokenstatic long expireIn2Timestamp(@NonNull
Integer timeout,
@Nullable
Integer expireIn)
timeout - HttpConfig.getTimeout(), 单位毫秒expireIn - 有效期static me.zhyd.oauth.model.AuthResponse responseError(Exception e)
AuthDefaultRequest.login(AuthCallback) 发生异常的情况,统一响应参数.
copy of AuthDefaultRequeste - 具体的异常#responseError(Exception)Copyright © 2021. All rights reserved.