提交 798e7556 编写于 作者: 智布道's avatar 智布道 👁

🔖 增加`stackoverflow`参数校验、解决`Pinterest`获取用户失败的问题,发布v1.9.1

上级 1244524d
...@@ -6,7 +6,7 @@ ...@@ -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 @@ ...@@ -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,如你所见,它仅仅是一个**第三方授权登录**的**工具 ...@@ -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的授权开放平台已经 ...@@ -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. 等待作者合并
## 致谢 ## 致谢
......
...@@ -6,7 +6,7 @@ ...@@ -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 @@ ...@@ -190,4 +190,4 @@
</distributionManagement> </distributionManagement>
</profile> </profile>
</profiles> </profiles>
</project> </project>
\ No newline at end of file
...@@ -80,6 +80,7 @@ public abstract class AuthDefaultRequest implements AuthRequest { ...@@ -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 { ...@@ -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 { ...@@ -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 { ...@@ -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 { ...@@ -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 { ...@@ -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 { ...@@ -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 { ...@@ -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 { ...@@ -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 { ...@@ -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 { ...@@ -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 { ...@@ -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 { ...@@ -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 { ...@@ -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 { ...@@ -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 { ...@@ -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 { ...@@ -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; ...@@ -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
*/ */
......
### 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`枚举类
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册