Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
justauth
JustAuth
提交
7cdc7191
J
JustAuth
项目概览
justauth
/
JustAuth
1 年多 前同步成功
通知
391
Star
15212
Fork
2708
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
J
JustAuth
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
7cdc7191
编写于
8月 10, 2021
作者:
cly_0
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
继续进行优化,去掉多余的改动
上级
5073f828
变更
4
展开全部
隐藏空白更改
内联
并排
Showing
4 changed file
with
96 addition
and
521 deletion
+96
-521
src/main/java/me/zhyd/oauth/config/AuthDefaultSource.java
src/main/java/me/zhyd/oauth/config/AuthDefaultSource.java
+69
-475
src/main/java/me/zhyd/oauth/config/AuthSource.java
src/main/java/me/zhyd/oauth/config/AuthSource.java
+0
-17
src/test/java/me/zhyd/oauth/config/AuthExtendSource.java
src/test/java/me/zhyd/oauth/config/AuthExtendSource.java
+25
-29
src/test/java/me/zhyd/oauth/request/AuthWeChatMpRequestTest.java
...t/java/me/zhyd/oauth/request/AuthWeChatMpRequestTest.java
+2
-0
未找到文件。
src/main/java/me/zhyd/oauth/config/AuthDefaultSource.java
浏览文件 @
7cdc7191
此差异已折叠。
点击以展开。
src/main/java/me/zhyd/oauth/config/AuthSource.java
浏览文件 @
7cdc7191
package
me.zhyd.oauth.config
;
import
me.zhyd.oauth.cache.AuthStateCache
;
import
me.zhyd.oauth.enums.AuthResponseStatus
;
import
me.zhyd.oauth.exception.AuthException
;
import
me.zhyd.oauth.model.AuthCallback
;
import
me.zhyd.oauth.request.AuthRequest
;
/**
* OAuth平台的API地址的统一接口,提供以下方法:
...
...
@@ -46,21 +44,6 @@ public interface AuthSource {
*/
String
userInfo
();
/**
* 根据配置获取对应的实例
* @param authConfig 配置
* @return AuthRequest
*/
AuthRequest
getAuthRequestInstance
(
AuthConfig
authConfig
);
/**
* 根据配置和缓存获取对应的实例
* @param authConfig 配置
* @param authStateCache 缓存
* @return AuthRequest
*/
AuthRequest
getAuthRequestInstance
(
AuthConfig
authConfig
,
AuthStateCache
authStateCache
);
/**
* 取消授权的api
*
...
...
src/test/java/me/zhyd/oauth/config/AuthExtendSource.java
浏览文件 @
7cdc7191
...
...
@@ -2,11 +2,10 @@ package me.zhyd.oauth.config;
import
me.zhyd.oauth.cache.AuthStateCache
;
import
me.zhyd.oauth.exception.AuthException
;
import
me.zhyd.oauth.request.AuthDefaultRequest
;
import
me.zhyd.oauth.request.AuthExtendRequest
;
import
me.zhyd.oauth.request.AuthRequest
;
import
java.lang.reflect.Constructor
;
/**
* 测试自定义实现{@link AuthSource}接口后的枚举类
*
...
...
@@ -16,7 +15,7 @@ import java.lang.reflect.Constructor;
*/
public
enum
AuthExtendSource
implements
AuthSource
{
OTHER
{
OTHER
(
AuthExtendRequest
.
class
)
{
/**
* 授权的api
*
...
...
@@ -47,32 +46,6 @@ public enum AuthExtendSource implements AuthSource {
return
null
;
}
@Override
public
AuthRequest
getAuthRequestInstance
(
AuthConfig
authConfig
)
{
return
getAuthRequestInstance
(
authConfig
,
null
);
}
@Override
public
AuthRequest
getAuthRequestInstance
(
AuthConfig
authConfig
,
AuthStateCache
authStateCache
)
{
try
{
AuthRequest
request
;
Class
<?>
clazz
=
Class
.
forName
(
AuthExtendRequest
.
class
.
getName
());
Constructor
constructor
;
if
(
authStateCache
==
null
){
constructor
=
clazz
.
getDeclaredConstructor
(
AuthConfig
.
class
);
constructor
.
setAccessible
(
true
);
request
=
(
AuthRequest
)
constructor
.
newInstance
(
authConfig
);
}
else
{
constructor
=
clazz
.
getDeclaredConstructor
(
AuthConfig
.
class
,
AuthStateCache
.
class
);
constructor
.
setAccessible
(
true
);
request
=
(
AuthRequest
)
constructor
.
newInstance
(
authConfig
,
authStateCache
);
}
return
request
;
}
catch
(
Exception
e
)
{
throw
new
AuthException
(
"未获取到有效的Auth配置"
);
}
}
/**
* 取消授权的api
*
...
...
@@ -92,5 +65,28 @@ public enum AuthExtendSource implements AuthSource {
public
String
refresh
()
{
return
null
;
}
};
private
Class
<?
extends
AuthDefaultRequest
>
targetClass
;
AuthExtendSource
(
Class
<?
extends
AuthDefaultRequest
>
targetClass
)
{
this
.
targetClass
=
targetClass
;
}
public
AuthRequest
getAuthRequestInstance
(
AuthConfig
authConfig
)
{
return
this
.
getAuthRequestInstance
(
authConfig
,
null
);
}
public
AuthRequest
getAuthRequestInstance
(
AuthConfig
authConfig
,
AuthStateCache
authStateCache
)
{
try
{
if
(
authStateCache
==
null
){
return
this
.
targetClass
.
getDeclaredConstructor
(
AuthConfig
.
class
).
newInstance
(
authConfig
);
}
else
{
return
this
.
targetClass
.
getDeclaredConstructor
(
AuthConfig
.
class
,
AuthStateCache
.
class
).
newInstance
(
authConfig
,
authStateCache
);
}
}
catch
(
Exception
e
)
{
throw
new
AuthException
(
"未获取到有效的Auth配置"
);
}
}
}
src/test/java/me/zhyd/oauth/request/AuthWeChatMpRequestTest.java
浏览文件 @
7cdc7191
...
...
@@ -3,6 +3,7 @@ package me.zhyd.oauth.request;
import
me.zhyd.oauth.config.AuthConfig
;
import
me.zhyd.oauth.config.AuthDefaultSource
;
import
me.zhyd.oauth.utils.AuthStateUtils
;
import
org.junit.Assert
;
import
org.junit.Test
;
public
class
AuthWeChatMpRequestTest
{
...
...
@@ -25,6 +26,7 @@ public class AuthWeChatMpRequestTest {
.
clientSecret
(
"a"
)
.
redirectUri
(
"https://www.justauth.cn"
)
.
build
());
Assert
.
assertTrue
(
request
instanceof
AuthWeChatMpRequest
);
System
.
out
.
println
(
request
.
authorize
(
AuthStateUtils
.
createState
()));
}
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录