mirror of
https://gitee.com/yadong.zhang/JustAuth.git
synced 2025-12-06 16:58:24 +08:00
🔖 增加stackoverflow参数校验、解决Pinterest获取用户失败的问题,发布v1.9.1
This commit is contained in:
parent
1244524da0
commit
798e7556ba
@ -6,7 +6,7 @@
|
|||||||
</p>
|
</p>
|
||||||
<p align="center">
|
<p align="center">
|
||||||
<a target="_blank" href="https://search.maven.org/search?q=JustAuth">
|
<a target="_blank" href="https://search.maven.org/search?q=JustAuth">
|
||||||
<img src="https://img.shields.io/badge/Maven Central-1.9.0-blue.svg" ></img>
|
<img src="https://img.shields.io/badge/Maven Central-1.9.1-blue.svg" ></img>
|
||||||
</a>
|
</a>
|
||||||
<a target="_blank" href="https://gitee.com/yadong.zhang/JustAuth/blob/master/LICENSE">
|
<a target="_blank" href="https://gitee.com/yadong.zhang/JustAuth/blob/master/LICENSE">
|
||||||
<img src="https://img.shields.io/apm/l/vim-mode.svg?color=yellow" ></img>
|
<img src="https://img.shields.io/apm/l/vim-mode.svg?color=yellow" ></img>
|
||||||
@ -15,7 +15,7 @@
|
|||||||
<img src="https://img.shields.io/badge/JDK-1.8+-green.svg" ></img>
|
<img src="https://img.shields.io/badge/JDK-1.8+-green.svg" ></img>
|
||||||
</a>
|
</a>
|
||||||
<a target="_blank" href="https://apidoc.gitee.com/yadong.zhang/JustAuth/">
|
<a target="_blank" href="https://apidoc.gitee.com/yadong.zhang/JustAuth/">
|
||||||
<img src="https://img.shields.io/badge/Docs-1.9.0-orange.svg" ></img>
|
<img src="https://img.shields.io/badge/Docs-1.9.1-orange.svg" ></img>
|
||||||
</a>
|
</a>
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
@ -76,7 +76,7 @@ JustAuth,如你所见,它仅仅是一个**第三方授权登录**的**工具
|
|||||||
<dependency>
|
<dependency>
|
||||||
<groupId>me.zhyd.oauth</groupId>
|
<groupId>me.zhyd.oauth</groupId>
|
||||||
<artifactId>JustAuth</artifactId>
|
<artifactId>JustAuth</artifactId>
|
||||||
<version>1.9.0</version>
|
<version>1.9.1</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
```
|
```
|
||||||
- 调用api
|
- 调用api
|
||||||
@ -148,7 +148,7 @@ _请知悉:经咨询CSDN官方客服得知,CSDN的授权开放平台已经
|
|||||||
2. 把fork过去的项目也就是你仓库中的项目clone到你的本地
|
2. 把fork过去的项目也就是你仓库中的项目clone到你的本地
|
||||||
3. 修改代码
|
3. 修改代码
|
||||||
4. commit后push到自己的库
|
4. commit后push到自己的库
|
||||||
5. 发起PR(pull request) 请求
|
5. 发起PR(pull request) 请求,提交到`dev`分支
|
||||||
6. 等待作者合并
|
6. 等待作者合并
|
||||||
|
|
||||||
## 致谢
|
## 致谢
|
||||||
|
|||||||
4
pom.xml
4
pom.xml
@ -6,7 +6,7 @@
|
|||||||
|
|
||||||
<groupId>me.zhyd.oauth</groupId>
|
<groupId>me.zhyd.oauth</groupId>
|
||||||
<artifactId>JustAuth</artifactId>
|
<artifactId>JustAuth</artifactId>
|
||||||
<version>1.9.0</version>
|
<version>1.9.1</version>
|
||||||
|
|
||||||
<name>JustAuth</name>
|
<name>JustAuth</name>
|
||||||
<url>https://gitee.com/yadong.zhang/JustAuth</url>
|
<url>https://gitee.com/yadong.zhang/JustAuth</url>
|
||||||
@ -190,4 +190,4 @@
|
|||||||
</distributionManagement>
|
</distributionManagement>
|
||||||
</profile>
|
</profile>
|
||||||
</profiles>
|
</profiles>
|
||||||
</project>
|
</project>
|
||||||
|
|||||||
@ -80,6 +80,7 @@ public abstract class AuthDefaultRequest implements AuthRequest {
|
|||||||
/**
|
/**
|
||||||
* 返回获取accessToken的url
|
* 返回获取accessToken的url
|
||||||
*
|
*
|
||||||
|
* @param code 授权码
|
||||||
* @return 返回获取accessToken的url
|
* @return 返回获取accessToken的url
|
||||||
*/
|
*/
|
||||||
protected String accessTokenUrl(String code) {
|
protected String accessTokenUrl(String code) {
|
||||||
@ -95,6 +96,7 @@ public abstract class AuthDefaultRequest implements AuthRequest {
|
|||||||
/**
|
/**
|
||||||
* 返回获取accessToken的url
|
* 返回获取accessToken的url
|
||||||
*
|
*
|
||||||
|
* @param refreshToken refreshToken
|
||||||
* @return 返回获取accessToken的url
|
* @return 返回获取accessToken的url
|
||||||
*/
|
*/
|
||||||
protected String refreshTokenUrl(String refreshToken) {
|
protected String refreshTokenUrl(String refreshToken) {
|
||||||
@ -110,6 +112,7 @@ public abstract class AuthDefaultRequest implements AuthRequest {
|
|||||||
/**
|
/**
|
||||||
* 返回获取userInfo的url
|
* 返回获取userInfo的url
|
||||||
*
|
*
|
||||||
|
* @param authToken token
|
||||||
* @return 返回获取userInfo的url
|
* @return 返回获取userInfo的url
|
||||||
*/
|
*/
|
||||||
protected String userInfoUrl(AuthToken authToken) {
|
protected String userInfoUrl(AuthToken authToken) {
|
||||||
@ -119,6 +122,7 @@ public abstract class AuthDefaultRequest implements AuthRequest {
|
|||||||
/**
|
/**
|
||||||
* 返回获取revoke authorization的url
|
* 返回获取revoke authorization的url
|
||||||
*
|
*
|
||||||
|
* @param authToken token
|
||||||
* @return 返回获取revoke authorization的url
|
* @return 返回获取revoke authorization的url
|
||||||
*/
|
*/
|
||||||
protected String revokeUrl(AuthToken authToken) {
|
protected String revokeUrl(AuthToken authToken) {
|
||||||
|
|||||||
@ -76,7 +76,7 @@ public class AuthDingTalkRequest extends AuthDefaultRequest {
|
|||||||
/**
|
/**
|
||||||
* 返回获取userInfo的url
|
* 返回获取userInfo的url
|
||||||
*
|
*
|
||||||
* @param authToken
|
* @param authToken 用户授权后的token
|
||||||
* @return 返回获取userInfo的url
|
* @return 返回获取userInfo的url
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@ -80,7 +80,7 @@ public class AuthGoogleRequest extends AuthDefaultRequest {
|
|||||||
/**
|
/**
|
||||||
* 返回获取userInfo的url
|
* 返回获取userInfo的url
|
||||||
*
|
*
|
||||||
* @param authToken
|
* @param authToken 用户授权后的token
|
||||||
* @return 返回获取userInfo的url
|
* @return 返回获取userInfo的url
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@ -200,7 +200,7 @@ public class AuthLinkedinRequest extends AuthDefaultRequest {
|
|||||||
/**
|
/**
|
||||||
* 返回获取userInfo的url
|
* 返回获取userInfo的url
|
||||||
*
|
*
|
||||||
* @param authToken
|
* @param authToken 用户授权后的token
|
||||||
* @return 返回获取userInfo的url
|
* @return 返回获取userInfo的url
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@ -128,7 +128,7 @@ public class AuthMiRequest extends AuthDefaultRequest {
|
|||||||
/**
|
/**
|
||||||
* 返回获取userInfo的url
|
* 返回获取userInfo的url
|
||||||
*
|
*
|
||||||
* @param authToken
|
* @param authToken 用户授权后的token
|
||||||
* @return 返回获取userInfo的url
|
* @return 返回获取userInfo的url
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@ -139,7 +139,7 @@ public class AuthMicrosoftRequest extends AuthDefaultRequest {
|
|||||||
/**
|
/**
|
||||||
* 返回获取userInfo的url
|
* 返回获取userInfo的url
|
||||||
*
|
*
|
||||||
* @param authToken
|
* @param authToken 用户授权后的token
|
||||||
* @return 返回获取userInfo的url
|
* @return 返回获取userInfo的url
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
@ -150,7 +150,7 @@ public class AuthMicrosoftRequest extends AuthDefaultRequest {
|
|||||||
/**
|
/**
|
||||||
* 返回获取accessToken的url
|
* 返回获取accessToken的url
|
||||||
*
|
*
|
||||||
* @param refreshToken
|
* @param refreshToken 用户授权后的token
|
||||||
* @return 返回获取accessToken的url
|
* @return 返回获取accessToken的url
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@ -77,7 +77,7 @@ public class AuthOschinaRequest extends AuthDefaultRequest {
|
|||||||
/**
|
/**
|
||||||
* 返回获取userInfo的url
|
* 返回获取userInfo的url
|
||||||
*
|
*
|
||||||
* @param authToken
|
* @param authToken 用户授权后的token
|
||||||
* @return 返回获取userInfo的url
|
* @return 返回获取userInfo的url
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@ -43,10 +43,8 @@ public class AuthPinterestRequest extends AuthDefaultRequest {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected AuthUser getUserInfo(AuthToken authToken) {
|
protected AuthUser getUserInfo(AuthToken authToken) {
|
||||||
String userinfoUrl = UrlBuilder.fromBaseUrl(userInfoUrl(authToken))
|
String userinfoUrl = userInfoUrl(authToken);
|
||||||
.queryParam("fields", "id,username,first_name,last_name,bio,image")
|
HttpResponse response = HttpRequest.get(userinfoUrl).setFollowRedirects(true).execute();
|
||||||
.build();
|
|
||||||
HttpResponse response = HttpRequest.post(userinfoUrl).execute();
|
|
||||||
JSONObject object = JSONObject.parseObject(response.body());
|
JSONObject object = JSONObject.parseObject(response.body());
|
||||||
this.checkResponse(object);
|
this.checkResponse(object);
|
||||||
JSONObject userObj = object.getJSONObject("data");
|
JSONObject userObj = object.getJSONObject("data");
|
||||||
@ -82,6 +80,19 @@ public class AuthPinterestRequest extends AuthDefaultRequest {
|
|||||||
.build();
|
.build();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 返回获取userInfo的url
|
||||||
|
*
|
||||||
|
* @param authToken token
|
||||||
|
* @return 返回获取userInfo的url
|
||||||
|
*/
|
||||||
|
protected String userInfoUrl(AuthToken authToken) {
|
||||||
|
return UrlBuilder.fromBaseUrl(source.userInfo())
|
||||||
|
.queryParam("access_token", authToken.getAccessToken())
|
||||||
|
.queryParam("fields", "id,username,first_name,last_name,bio,image")
|
||||||
|
.build();
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 检查响应内容是否正确
|
* 检查响应内容是否正确
|
||||||
*
|
*
|
||||||
|
|||||||
@ -100,7 +100,7 @@ public class AuthRenrenRequest extends AuthDefaultRequest {
|
|||||||
/**
|
/**
|
||||||
* 返回获取userInfo的url
|
* 返回获取userInfo的url
|
||||||
*
|
*
|
||||||
* @param authToken
|
* @param authToken 用户授权后的token
|
||||||
* @return 返回获取userInfo的url
|
* @return 返回获取userInfo的url
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@ -76,7 +76,7 @@ public class AuthWeiboRequest extends AuthDefaultRequest {
|
|||||||
/**
|
/**
|
||||||
* 返回获取userInfo的url
|
* 返回获取userInfo的url
|
||||||
*
|
*
|
||||||
* @param authToken
|
* @param authToken authToken
|
||||||
* @return 返回获取userInfo的url
|
* @return 返回获取userInfo的url
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@ -26,6 +26,9 @@ public class AuthChecker {
|
|||||||
if (isSupported && AuthSource.ALIPAY == source) {
|
if (isSupported && AuthSource.ALIPAY == source) {
|
||||||
isSupported = StringUtils.isNotEmpty(config.getAlipayPublicKey());
|
isSupported = StringUtils.isNotEmpty(config.getAlipayPublicKey());
|
||||||
}
|
}
|
||||||
|
if (isSupported && AuthSource.STACK_OVERFLOW == source) {
|
||||||
|
isSupported = StringUtils.isNotEmpty(config.getStackOverflowKey());
|
||||||
|
}
|
||||||
return isSupported;
|
return isSupported;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -45,7 +45,7 @@ public class GlobalAuthUtil {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private static String urlEncode(String value) {
|
public static String urlEncode(String value) {
|
||||||
if (value == null) {
|
if (value == null) {
|
||||||
return "";
|
return "";
|
||||||
}
|
}
|
||||||
|
|||||||
@ -14,7 +14,6 @@ import java.util.Map;
|
|||||||
* </p>
|
* </p>
|
||||||
*
|
*
|
||||||
* @author yangkai.shen (https://xkcoding.com)
|
* @author yangkai.shen (https://xkcoding.com)
|
||||||
* @date Created in 2019-07-18 15:47
|
|
||||||
* @version 1.0
|
* @version 1.0
|
||||||
* @since 1.8
|
* @since 1.8
|
||||||
*/
|
*/
|
||||||
|
|||||||
@ -1,5 +1,11 @@
|
|||||||
### 2019/07/19
|
### 2019/07/19
|
||||||
|
|
||||||
|
1. 增加`stackoverflow`参数校验
|
||||||
|
2. 解决`Pinterest`获取用户失败的问题
|
||||||
|
3. 添加注释
|
||||||
|
|
||||||
|
### 2019/07/19
|
||||||
|
|
||||||
1. 合并github上[@dyc12ii](https://github.com/dyc12ii) 的[pr#25](https://github.com/zhangyd-c/JustAuth/pull/25),升级fastjson版本至1.2.58,避免安全漏洞
|
1. 合并github上[@dyc12ii](https://github.com/dyc12ii) 的[pr#25](https://github.com/zhangyd-c/JustAuth/pull/25),升级fastjson版本至1.2.58,避免安全漏洞
|
||||||
2. `AuthUserGender`枚举类挪到`enums`包下
|
2. `AuthUserGender`枚举类挪到`enums`包下
|
||||||
3. 删除`AuthBaiduErrorCode`和`AuthDingTalkErrorCode`枚举类
|
3. 删除`AuthBaiduErrorCode`和`AuthDingTalkErrorCode`枚举类
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user