From e2e1a082d14a6feeb35c42ac9f4f62bf405aca1b Mon Sep 17 00:00:00 2001
From: "Yangkai.Shen" <237497819@qq.com>
Date: Tue, 16 Jul 2019 10:01:17 +0800
Subject: [PATCH 1/8] =?UTF-8?q?:bug:=20=E4=BF=AE=E5=A4=8D=E5=B0=8F?=
=?UTF-8?q?=E7=B1=B3=E5=9B=9E=E8=B0=83=E9=94=99=E8=AF=AF=E7=9A=84=E9=97=AE?=
=?UTF-8?q?=E9=A2=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/main/java/me/zhyd/oauth/request/AuthMiRequest.java | 4 ++++
src/main/java/me/zhyd/oauth/utils/UrlBuilder.java | 2 +-
2 files changed, 5 insertions(+), 1 deletion(-)
diff --git a/src/main/java/me/zhyd/oauth/request/AuthMiRequest.java b/src/main/java/me/zhyd/oauth/request/AuthMiRequest.java
index 6ca5403..149c86c 100644
--- a/src/main/java/me/zhyd/oauth/request/AuthMiRequest.java
+++ b/src/main/java/me/zhyd/oauth/request/AuthMiRequest.java
@@ -4,6 +4,7 @@ import cn.hutool.core.util.StrUtil;
import cn.hutool.http.HttpRequest;
import cn.hutool.http.HttpResponse;
import com.alibaba.fastjson.JSONObject;
+import lombok.extern.slf4j.Slf4j;
import me.zhyd.oauth.config.AuthConfig;
import me.zhyd.oauth.config.AuthSource;
import me.zhyd.oauth.exception.AuthException;
@@ -19,6 +20,7 @@ import java.text.MessageFormat;
* @version 1.5
* @since 1.5
*/
+@Slf4j
public class AuthMiRequest extends BaseAuthRequest {
private static final String PREFIX = "&&&START&&&";
@@ -86,6 +88,8 @@ public class AuthMiRequest extends BaseAuthRequest {
if (!"error".equalsIgnoreCase(userEmailPhone.getString("result"))) {
JSONObject emailPhone = userEmailPhone.getJSONObject("data");
authUser.setEmail(emailPhone.getString("email"));
+ }else {
+ log.warn("小米开发平台暂时不对外开放用户手机及邮箱信息的获取");
}
return authUser;
diff --git a/src/main/java/me/zhyd/oauth/utils/UrlBuilder.java b/src/main/java/me/zhyd/oauth/utils/UrlBuilder.java
index 70d8db7..d8ae653 100644
--- a/src/main/java/me/zhyd/oauth/utils/UrlBuilder.java
+++ b/src/main/java/me/zhyd/oauth/utils/UrlBuilder.java
@@ -87,7 +87,7 @@ public class UrlBuilder {
private static final String MICROSOFT_USER_INFO_PATTERN = "{0}";
private static final String MICROSOFT_REFRESH_TOKEN_PATTERN = "{0}?client_id={1}&client_secret={2}&scope=user.read%20mail.read&redirect_uri={3}&refresh_token={4}&grant_type=refresh_token";
- private static final String MI_AUTHORIZE_PATTERN = "{0}?client_id={1}&redirect_uri={2}&response_type=code&scope=1%203%204%206&state={3}&skip_confirm=false";
+ private static final String MI_AUTHORIZE_PATTERN = "{0}?client_id={1}&redirect_uri={2}&response_type=code&scope=user/profile%20user/openIdV2%20user/phoneAndEmail&state={3}&skip_confirm=false";
private static final String MI_ACCESS_TOKEN_PATTERN = "{0}?client_id={1}&client_secret={2}&redirect_uri={3}&code={4}&grant_type=authorization_code";
private static final String MI_USER_INFO_PATTERN = "{0}?clientId={1}&token={2}";
private static final String MI_REFRESH_TOKEN_PATTERN = "{0}?client_id={1}&client_secret={2}&redirect_uri={3}&refresh_token={4}&grant_type=refresh_token";
From 8d1b329c63e6708259b9eb976e52132008fa9de5 Mon Sep 17 00:00:00 2001
From: "Yangkai.Shen" <237497819@qq.com>
Date: Tue, 16 Jul 2019 10:30:29 +0800
Subject: [PATCH 2/8] =?UTF-8?q?:sparkles:=20=E5=BE=AE=E4=BF=A1=E7=99=BB?=
=?UTF-8?q?=E5=BD=95=E8=8E=B7=E5=8F=96unionId?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/main/java/me/zhyd/oauth/request/AuthWeChatRequest.java | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/src/main/java/me/zhyd/oauth/request/AuthWeChatRequest.java b/src/main/java/me/zhyd/oauth/request/AuthWeChatRequest.java
index e7ae78e..d081c08 100644
--- a/src/main/java/me/zhyd/oauth/request/AuthWeChatRequest.java
+++ b/src/main/java/me/zhyd/oauth/request/AuthWeChatRequest.java
@@ -44,6 +44,11 @@ public class AuthWeChatRequest extends BaseAuthRequest {
this.checkResponse(object);
String location = String.format("%s-%s-%s", object.getString("country"), object.getString("province"), object.getString("city"));
+
+ if (object.containsKey("unionid")){
+ authToken.setUnionId(object.getString("unionid"));
+ }
+
return AuthUser.builder()
.username(object.getString("nickname"))
.nickname(object.getString("nickname"))
From f7561e97fcef8f1d266c8b6c8bbde5c0d5a268c2 Mon Sep 17 00:00:00 2001
From: "yadong.zhang"
Date: Thu, 18 Jul 2019 15:50:54 +0800
Subject: [PATCH 3/8] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20example.md?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
example.md | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/example.md b/example.md
index 022ca61..fb5f25c 100644
--- a/example.md
+++ b/example.md
@@ -84,4 +84,12 @@ _注:非全部平台,部分平台可能不存在图例_
暂无
+#### 授权Pinterest
+
+
+
+#### 授权Renren
+
+
+
_请知悉:经咨询CSDN官方客服得知,CSDN的授权开放平台已经下线。如果以前申请过的应用,可以继续使用,但是不再支持申请新的应用。so, 本项目中的CSDN登录只能针对少部分用户使用了_
\ No newline at end of file
From a599ced6b05dda5bec0de463f70fcf7b7018be0e Mon Sep 17 00:00:00 2001
From: dingyanchao
Date: Fri, 19 Jul 2019 11:15:08 +0800
Subject: [PATCH 4/8] fastjson version
---
pom.xml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/pom.xml b/pom.xml
index 65a7890..065ed3d 100644
--- a/pom.xml
+++ b/pom.xml
@@ -52,7 +52,7 @@
4.5.15
1.18.4
4.11
- 1.2.44
+ 1.2.58
3.7.4.ALL
1.7.25
From 53df9924747bd447f51625d439db8065bda91214 Mon Sep 17 00:00:00 2001
From: "yadong.zhang"
Date: Fri, 19 Jul 2019 22:00:07 +0800
Subject: [PATCH 5/8] =?UTF-8?q?:zap:=20=E4=BC=98=E5=8C=96=E4=BB=A3?=
=?UTF-8?q?=E7=A0=81=E3=80=81=E4=BF=AE=E5=A4=8Dgoogle=E8=8E=B7=E5=8F=96?=
=?UTF-8?q?=E7=94=A8=E6=88=B7=E4=BF=A1=E6=81=AF=E5=A4=B1=E8=B4=A5=E7=9A=84?=
=?UTF-8?q?=E9=97=AE=E9=A2=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../java/me/zhyd/oauth/config/AuthSource.java | 2 +-
.../zhyd/oauth/request/AuthAlipayRequest.java | 2 +-
.../zhyd/oauth/request/AuthBaiduRequest.java | 10 ++++++--
.../zhyd/oauth/request/AuthCodingRequest.java | 2 +-
.../zhyd/oauth/request/AuthCsdnRequest.java | 2 +-
.../oauth/request/AuthDefaultRequest.java | 1 -
.../oauth/request/AuthDingTalkRequest.java | 2 +-
.../zhyd/oauth/request/AuthDouyinRequest.java | 2 +-
.../oauth/request/AuthFacebookRequest.java | 2 +-
.../zhyd/oauth/request/AuthGiteeRequest.java | 2 +-
.../zhyd/oauth/request/AuthGithubRequest.java | 25 +++++++++++--------
.../zhyd/oauth/request/AuthGoogleRequest.java | 14 +++++++----
.../me/zhyd/oauth/request/AuthMiRequest.java | 2 +-
.../oauth/request/AuthMicrosoftRequest.java | 2 +-
.../oauth/request/AuthOschinaRequest.java | 2 +-
.../oauth/request/AuthPinterestRequest.java | 2 +-
.../me/zhyd/oauth/request/AuthQqRequest.java | 2 +-
.../zhyd/oauth/request/AuthRenrenRequest.java | 2 +-
.../request/AuthStackOverflowRequest.java | 2 +-
.../zhyd/oauth/request/AuthTaobaoRequest.java | 2 +-
.../oauth/request/AuthTeambitionRequest.java | 2 +-
.../request/AuthTencentCloudRequest.java | 2 +-
.../oauth/request/AuthToutiaoRequest.java | 2 +-
.../zhyd/oauth/request/AuthWeChatRequest.java | 2 +-
.../zhyd/oauth/request/AuthWeiboRequest.java | 2 +-
update.md | 3 ++-
26 files changed, 55 insertions(+), 40 deletions(-)
diff --git a/src/main/java/me/zhyd/oauth/config/AuthSource.java b/src/main/java/me/zhyd/oauth/config/AuthSource.java
index f712210..1ea6704 100644
--- a/src/main/java/me/zhyd/oauth/config/AuthSource.java
+++ b/src/main/java/me/zhyd/oauth/config/AuthSource.java
@@ -294,7 +294,7 @@ public enum AuthSource {
@Override
public String userInfo() {
- return "https://oauth2.googleapis.com/tokeninfo";
+ return "https://www.googleapis.com/oauth2/v3/userinfo";
}
},
/**
diff --git a/src/main/java/me/zhyd/oauth/request/AuthAlipayRequest.java b/src/main/java/me/zhyd/oauth/request/AuthAlipayRequest.java
index 18b49ad..07ce7da 100644
--- a/src/main/java/me/zhyd/oauth/request/AuthAlipayRequest.java
+++ b/src/main/java/me/zhyd/oauth/request/AuthAlipayRequest.java
@@ -81,7 +81,7 @@ public class AuthAlipayRequest extends AuthDefaultRequest {
.location(location)
.gender(AuthUserGender.getRealGender(response.getGender()))
.token(authToken)
- .source(AuthSource.ALIPAY)
+ .source(source)
.build();
}
diff --git a/src/main/java/me/zhyd/oauth/request/AuthBaiduRequest.java b/src/main/java/me/zhyd/oauth/request/AuthBaiduRequest.java
index 92d97a3..5ce2149 100644
--- a/src/main/java/me/zhyd/oauth/request/AuthBaiduRequest.java
+++ b/src/main/java/me/zhyd/oauth/request/AuthBaiduRequest.java
@@ -8,6 +8,7 @@ import me.zhyd.oauth.config.AuthSource;
import me.zhyd.oauth.enums.AuthUserGender;
import me.zhyd.oauth.exception.AuthException;
import me.zhyd.oauth.model.*;
+import me.zhyd.oauth.utils.StringUtils;
import me.zhyd.oauth.utils.UrlBuilder;
/**
@@ -39,14 +40,19 @@ public class AuthBaiduRequest extends AuthDefaultRequest {
.uuid(object.getString("userid"))
.username(object.getString("username"))
.nickname(object.getString("username"))
- .avatar(object.getString("portrait"))
+ .avatar(getAvatar(object))
.remark(object.getString("userdetail"))
.gender(AuthUserGender.getRealGender(object.getString("sex")))
.token(authToken)
- .source(AuthSource.BAIDU)
+ .source(source)
.build();
}
+ private String getAvatar(JSONObject object) {
+ String protrait = object.getString("portrait");
+ return StringUtils.isEmpty(protrait) ? null : String.format("http://himg.bdimg.com/sys/portrait/item/%s.jpg", protrait);
+ }
+
@Override
public AuthResponse revoke(AuthToken authToken) {
HttpResponse response = doGetRevoke(authToken);
diff --git a/src/main/java/me/zhyd/oauth/request/AuthCodingRequest.java b/src/main/java/me/zhyd/oauth/request/AuthCodingRequest.java
index 070d57b..98e45bf 100644
--- a/src/main/java/me/zhyd/oauth/request/AuthCodingRequest.java
+++ b/src/main/java/me/zhyd/oauth/request/AuthCodingRequest.java
@@ -55,7 +55,7 @@ public class AuthCodingRequest extends AuthDefaultRequest {
.email(object.getString("email"))
.remark(object.getString("slogan"))
.token(authToken)
- .source(AuthSource.CODING)
+ .source(source)
.build();
}
diff --git a/src/main/java/me/zhyd/oauth/request/AuthCsdnRequest.java b/src/main/java/me/zhyd/oauth/request/AuthCsdnRequest.java
index 9043f04..3a72d37 100644
--- a/src/main/java/me/zhyd/oauth/request/AuthCsdnRequest.java
+++ b/src/main/java/me/zhyd/oauth/request/AuthCsdnRequest.java
@@ -44,7 +44,7 @@ public class AuthCsdnRequest extends AuthDefaultRequest {
.blog(object.getString("website"))
.gender(AuthUserGender.UNKNOWN)
.token(authToken)
- .source(AuthSource.CSDN)
+ .source(source)
.build();
}
diff --git a/src/main/java/me/zhyd/oauth/request/AuthDefaultRequest.java b/src/main/java/me/zhyd/oauth/request/AuthDefaultRequest.java
index 9f022fe..ca0491d 100644
--- a/src/main/java/me/zhyd/oauth/request/AuthDefaultRequest.java
+++ b/src/main/java/me/zhyd/oauth/request/AuthDefaultRequest.java
@@ -20,7 +20,6 @@ import me.zhyd.oauth.utils.UrlBuilder;
* @version 1.0
* @since 1.8
*/
-@Data
@Slf4j
public abstract class AuthDefaultRequest implements AuthRequest {
protected AuthConfig config;
diff --git a/src/main/java/me/zhyd/oauth/request/AuthDingTalkRequest.java b/src/main/java/me/zhyd/oauth/request/AuthDingTalkRequest.java
index 69956a7..1b2d9a4 100644
--- a/src/main/java/me/zhyd/oauth/request/AuthDingTalkRequest.java
+++ b/src/main/java/me/zhyd/oauth/request/AuthDingTalkRequest.java
@@ -52,7 +52,7 @@ public class AuthDingTalkRequest extends AuthDefaultRequest {
.nickname(object.getString("nick"))
.username(object.getString("nick"))
.gender(AuthUserGender.UNKNOWN)
- .source(AuthSource.DINGTALK)
+ .source(source)
.token(token)
.build();
}
diff --git a/src/main/java/me/zhyd/oauth/request/AuthDouyinRequest.java b/src/main/java/me/zhyd/oauth/request/AuthDouyinRequest.java
index 9c46b4f..a68f232 100644
--- a/src/main/java/me/zhyd/oauth/request/AuthDouyinRequest.java
+++ b/src/main/java/me/zhyd/oauth/request/AuthDouyinRequest.java
@@ -42,7 +42,7 @@ public class AuthDouyinRequest extends AuthDefaultRequest {
.remark(userInfoObject.getString("description"))
.gender(AuthUserGender.UNKNOWN)
.token(authToken)
- .source(AuthSource.DOUYIN)
+ .source(source)
.build();
}
diff --git a/src/main/java/me/zhyd/oauth/request/AuthFacebookRequest.java b/src/main/java/me/zhyd/oauth/request/AuthFacebookRequest.java
index 771c894..6d7cc2b 100644
--- a/src/main/java/me/zhyd/oauth/request/AuthFacebookRequest.java
+++ b/src/main/java/me/zhyd/oauth/request/AuthFacebookRequest.java
@@ -51,7 +51,7 @@ public class AuthFacebookRequest extends AuthDefaultRequest {
.email(object.getString("email"))
.gender(AuthUserGender.getRealGender(object.getString("gender")))
.token(authToken)
- .source(AuthSource.FACEBOOK)
+ .source(source)
.build();
}
diff --git a/src/main/java/me/zhyd/oauth/request/AuthGiteeRequest.java b/src/main/java/me/zhyd/oauth/request/AuthGiteeRequest.java
index 0522003..e32c124 100644
--- a/src/main/java/me/zhyd/oauth/request/AuthGiteeRequest.java
+++ b/src/main/java/me/zhyd/oauth/request/AuthGiteeRequest.java
@@ -55,7 +55,7 @@ public class AuthGiteeRequest extends AuthDefaultRequest {
.remark(object.getString("bio"))
.gender(AuthUserGender.UNKNOWN)
.token(authToken)
- .source(AuthSource.GITEE)
+ .source(source)
.build();
}
diff --git a/src/main/java/me/zhyd/oauth/request/AuthGithubRequest.java b/src/main/java/me/zhyd/oauth/request/AuthGithubRequest.java
index c843a8b..f71378c 100644
--- a/src/main/java/me/zhyd/oauth/request/AuthGithubRequest.java
+++ b/src/main/java/me/zhyd/oauth/request/AuthGithubRequest.java
@@ -9,6 +9,9 @@ import me.zhyd.oauth.exception.AuthException;
import me.zhyd.oauth.model.AuthCallback;
import me.zhyd.oauth.model.AuthToken;
import me.zhyd.oauth.model.AuthUser;
+import me.zhyd.oauth.utils.GlobalAuthUtil;
+
+import java.util.Map;
/**
* Github登录
@@ -26,12 +29,14 @@ public class AuthGithubRequest extends AuthDefaultRequest {
@Override
protected AuthToken getAccessToken(AuthCallback authCallback) {
HttpResponse response = doPostAuthorizationCode(authCallback.getCode());
- JSONObject accessTokenObject = JSONObject.parseObject(response.body());
- this.checkResponse(accessTokenObject);
+ Map res = GlobalAuthUtil.parseStringToMap(response.body());
+ if (res.containsKey("error")) {
+ throw new AuthException(res.get("error") + ":" + res.get("error_description"));
+ }
return AuthToken.builder()
- .accessToken(accessTokenObject.getString("access_token"))
- .scope(accessTokenObject.getString("scope"))
- .tokenType(accessTokenObject.getString("token_type"))
+ .accessToken(res.get("access_token"))
+ .scope(res.get("scope"))
+ .tokenType(res.get("token_type"))
.build();
}
@@ -39,7 +44,9 @@ public class AuthGithubRequest extends AuthDefaultRequest {
protected AuthUser getUserInfo(AuthToken authToken) {
HttpResponse response = doGetUserInfo(authToken);
JSONObject object = JSONObject.parseObject(response.body());
- this.checkResponse(object);
+ if (object.containsKey("error")) {
+ throw new AuthException(object.getString("error_description"));
+ }
return AuthUser.builder()
.uuid(object.getString("id"))
.username(object.getString("login"))
@@ -52,7 +59,7 @@ public class AuthGithubRequest extends AuthDefaultRequest {
.remark(object.getString("bio"))
.gender(AuthUserGender.UNKNOWN)
.token(authToken)
- .source(AuthSource.GITHUB)
+ .source(source)
.build();
}
@@ -62,8 +69,6 @@ public class AuthGithubRequest extends AuthDefaultRequest {
* @param object 请求响应内容
*/
private void checkResponse(JSONObject object) {
- if (object.containsKey("error")) {
- throw new AuthException(object.getString("error_description"));
- }
+
}
}
diff --git a/src/main/java/me/zhyd/oauth/request/AuthGoogleRequest.java b/src/main/java/me/zhyd/oauth/request/AuthGoogleRequest.java
index a6a603a..bb648d3 100644
--- a/src/main/java/me/zhyd/oauth/request/AuthGoogleRequest.java
+++ b/src/main/java/me/zhyd/oauth/request/AuthGoogleRequest.java
@@ -1,5 +1,6 @@
package me.zhyd.oauth.request;
+import cn.hutool.http.HttpRequest;
import cn.hutool.http.HttpResponse;
import com.alibaba.fastjson.JSONObject;
import me.zhyd.oauth.config.AuthConfig;
@@ -40,25 +41,28 @@ public class AuthGoogleRequest extends AuthDefaultRequest {
@Override
protected AuthUser getUserInfo(AuthToken authToken) {
- HttpResponse response = doGetUserInfo(authToken);
+ HttpResponse response = HttpRequest.post(userInfoUrl(authToken))
+ .header("Authorization", "Bearer " + authToken.getAccessToken())
+ .execute();
String userInfo = response.body();
JSONObject object = JSONObject.parseObject(userInfo);
this.checkResponse(object);
return AuthUser.builder()
.uuid(object.getString("sub"))
- .username(object.getString("name"))
+ .username(object.getString("email"))
.avatar(object.getString("picture"))
.nickname(object.getString("name"))
.location(object.getString("locale"))
.email(object.getString("email"))
.gender(AuthUserGender.UNKNOWN)
.token(authToken)
- .source(AuthSource.GOOGLE)
+ .source(source)
.build();
}
/**
* 返回认证url,可自行跳转页面
+ * https://openidconnect.googleapis.com/v1/userinfo
*
* @return 返回授权地址
*/
@@ -81,7 +85,7 @@ public class AuthGoogleRequest extends AuthDefaultRequest {
*/
@Override
protected String userInfoUrl(AuthToken authToken) {
- return UrlBuilder.fromBaseUrl(source.userInfo()).queryParam("id_token", authToken.getAccessToken()).build();
+ return UrlBuilder.fromBaseUrl(source.userInfo()).queryParam("access_token", authToken.getAccessToken()).build();
}
/**
@@ -91,7 +95,7 @@ public class AuthGoogleRequest extends AuthDefaultRequest {
*/
private void checkResponse(JSONObject object) {
if (object.containsKey("error") || object.containsKey("error_description")) {
- throw new AuthException(object.getString("error_description"));
+ throw new AuthException(object.containsKey("error") + ":" + object.getString("error_description"));
}
}
}
diff --git a/src/main/java/me/zhyd/oauth/request/AuthMiRequest.java b/src/main/java/me/zhyd/oauth/request/AuthMiRequest.java
index 2fddab2..8d7edb6 100644
--- a/src/main/java/me/zhyd/oauth/request/AuthMiRequest.java
+++ b/src/main/java/me/zhyd/oauth/request/AuthMiRequest.java
@@ -75,7 +75,7 @@ public class AuthMiRequest extends AuthDefaultRequest {
.email(user.getString("mail"))
.gender(AuthUserGender.UNKNOWN)
.token(authToken)
- .source(AuthSource.MI)
+ .source(source)
.build();
// 获取用户邮箱手机号等信息
diff --git a/src/main/java/me/zhyd/oauth/request/AuthMicrosoftRequest.java b/src/main/java/me/zhyd/oauth/request/AuthMicrosoftRequest.java
index 4b5e864..0fc34b8 100644
--- a/src/main/java/me/zhyd/oauth/request/AuthMicrosoftRequest.java
+++ b/src/main/java/me/zhyd/oauth/request/AuthMicrosoftRequest.java
@@ -83,7 +83,7 @@ public class AuthMicrosoftRequest extends AuthDefaultRequest {
.email(object.getString("mail"))
.gender(AuthUserGender.UNKNOWN)
.token(authToken)
- .source(AuthSource.MICROSOFT)
+ .source(source)
.build();
}
diff --git a/src/main/java/me/zhyd/oauth/request/AuthOschinaRequest.java b/src/main/java/me/zhyd/oauth/request/AuthOschinaRequest.java
index 955a807..0766de1 100644
--- a/src/main/java/me/zhyd/oauth/request/AuthOschinaRequest.java
+++ b/src/main/java/me/zhyd/oauth/request/AuthOschinaRequest.java
@@ -52,7 +52,7 @@ public class AuthOschinaRequest extends AuthDefaultRequest {
.gender(AuthUserGender.getRealGender(object.getString("gender")))
.email(object.getString("email"))
.token(authToken)
- .source(AuthSource.OSCHINA)
+ .source(source)
.build();
}
diff --git a/src/main/java/me/zhyd/oauth/request/AuthPinterestRequest.java b/src/main/java/me/zhyd/oauth/request/AuthPinterestRequest.java
index e86a247..b31893a 100644
--- a/src/main/java/me/zhyd/oauth/request/AuthPinterestRequest.java
+++ b/src/main/java/me/zhyd/oauth/request/AuthPinterestRequest.java
@@ -58,7 +58,7 @@ public class AuthPinterestRequest extends AuthDefaultRequest {
.gender(AuthUserGender.UNKNOWN)
.remark(userObj.getString("bio"))
.token(authToken)
- .source(PINTEREST)
+ .source(source)
.build();
}
diff --git a/src/main/java/me/zhyd/oauth/request/AuthQqRequest.java b/src/main/java/me/zhyd/oauth/request/AuthQqRequest.java
index 7943ea3..1b8d6f9 100644
--- a/src/main/java/me/zhyd/oauth/request/AuthQqRequest.java
+++ b/src/main/java/me/zhyd/oauth/request/AuthQqRequest.java
@@ -65,7 +65,7 @@ public class AuthQqRequest extends AuthDefaultRequest {
.uuid(openId)
.gender(AuthUserGender.getRealGender(object.getString("gender")))
.token(authToken)
- .source(AuthSource.QQ)
+ .source(source)
.build();
}
diff --git a/src/main/java/me/zhyd/oauth/request/AuthRenrenRequest.java b/src/main/java/me/zhyd/oauth/request/AuthRenrenRequest.java
index c4d4af5..7a16b45 100644
--- a/src/main/java/me/zhyd/oauth/request/AuthRenrenRequest.java
+++ b/src/main/java/me/zhyd/oauth/request/AuthRenrenRequest.java
@@ -45,7 +45,7 @@ public class AuthRenrenRequest extends AuthDefaultRequest {
.company(getCompany(userObj))
.gender(getGender(userObj))
.token(authToken)
- .source(RENREN)
+ .source(source)
.build();
}
diff --git a/src/main/java/me/zhyd/oauth/request/AuthStackOverflowRequest.java b/src/main/java/me/zhyd/oauth/request/AuthStackOverflowRequest.java
index 3784012..655c9c5 100644
--- a/src/main/java/me/zhyd/oauth/request/AuthStackOverflowRequest.java
+++ b/src/main/java/me/zhyd/oauth/request/AuthStackOverflowRequest.java
@@ -63,7 +63,7 @@ public class AuthStackOverflowRequest extends AuthDefaultRequest {
.blog(userObj.getString("website_url"))
.gender(AuthUserGender.UNKNOWN)
.token(authToken)
- .source(STACK_OVERFLOW)
+ .source(source)
.build();
}
diff --git a/src/main/java/me/zhyd/oauth/request/AuthTaobaoRequest.java b/src/main/java/me/zhyd/oauth/request/AuthTaobaoRequest.java
index 55760bd..7a3b522 100644
--- a/src/main/java/me/zhyd/oauth/request/AuthTaobaoRequest.java
+++ b/src/main/java/me/zhyd/oauth/request/AuthTaobaoRequest.java
@@ -50,7 +50,7 @@ public class AuthTaobaoRequest extends AuthDefaultRequest {
.nickname(nick)
.gender(AuthUserGender.UNKNOWN)
.token(authToken)
- .source(AuthSource.TAOBAO)
+ .source(source)
.build();
}
diff --git a/src/main/java/me/zhyd/oauth/request/AuthTeambitionRequest.java b/src/main/java/me/zhyd/oauth/request/AuthTeambitionRequest.java
index 81c6b3c..d8e79f6 100644
--- a/src/main/java/me/zhyd/oauth/request/AuthTeambitionRequest.java
+++ b/src/main/java/me/zhyd/oauth/request/AuthTeambitionRequest.java
@@ -67,7 +67,7 @@ public class AuthTeambitionRequest extends AuthDefaultRequest {
.email(object.getString("email"))
.gender(AuthUserGender.UNKNOWN)
.token(authToken)
- .source(AuthSource.TEAMBITION)
+ .source(source)
.build();
}
diff --git a/src/main/java/me/zhyd/oauth/request/AuthTencentCloudRequest.java b/src/main/java/me/zhyd/oauth/request/AuthTencentCloudRequest.java
index 8a817c4..7aaa77d 100644
--- a/src/main/java/me/zhyd/oauth/request/AuthTencentCloudRequest.java
+++ b/src/main/java/me/zhyd/oauth/request/AuthTencentCloudRequest.java
@@ -55,7 +55,7 @@ public class AuthTencentCloudRequest extends AuthDefaultRequest {
.email(object.getString("email"))
.remark(object.getString("slogan"))
.token(authToken)
- .source(AuthSource.TENCENT_CLOUD)
+ .source(source)
.build();
}
diff --git a/src/main/java/me/zhyd/oauth/request/AuthToutiaoRequest.java b/src/main/java/me/zhyd/oauth/request/AuthToutiaoRequest.java
index 85ff25e..2a1c979 100644
--- a/src/main/java/me/zhyd/oauth/request/AuthToutiaoRequest.java
+++ b/src/main/java/me/zhyd/oauth/request/AuthToutiaoRequest.java
@@ -60,7 +60,7 @@ public class AuthToutiaoRequest extends AuthDefaultRequest {
.remark(user.getString("description"))
.gender(AuthUserGender.getRealGender(user.getString("gender")))
.token(authToken)
- .source(AuthSource.TOUTIAO)
+ .source(source)
.build();
}
diff --git a/src/main/java/me/zhyd/oauth/request/AuthWeChatRequest.java b/src/main/java/me/zhyd/oauth/request/AuthWeChatRequest.java
index 2d426c5..dbc029a 100644
--- a/src/main/java/me/zhyd/oauth/request/AuthWeChatRequest.java
+++ b/src/main/java/me/zhyd/oauth/request/AuthWeChatRequest.java
@@ -56,7 +56,7 @@ public class AuthWeChatRequest extends AuthDefaultRequest {
.uuid(openId)
.gender(AuthUserGender.getRealGender(object.getString("sex")))
.token(authToken)
- .source(AuthSource.WECHAT)
+ .source(source)
.build();
}
diff --git a/src/main/java/me/zhyd/oauth/request/AuthWeiboRequest.java b/src/main/java/me/zhyd/oauth/request/AuthWeiboRequest.java
index a792573..0297ba7 100644
--- a/src/main/java/me/zhyd/oauth/request/AuthWeiboRequest.java
+++ b/src/main/java/me/zhyd/oauth/request/AuthWeiboRequest.java
@@ -69,7 +69,7 @@ public class AuthWeiboRequest extends AuthDefaultRequest {
.remark(object.getString("description"))
.gender(AuthUserGender.getRealGender(object.getString("gender")))
.token(authToken)
- .source(AuthSource.WEIBO)
+ .source(source)
.build();
}
diff --git a/update.md b/update.md
index ce8152e..70d7689 100644
--- a/update.md
+++ b/update.md
@@ -7,7 +7,8 @@
5. 优化`AuthConfig`、`AuthResponse`类,去掉不必要的lombonk注解,减少编译后的代码量
6. 使用lombok注解优化枚举类
7. `AuthQqRequest`增加refresh方法
-8. 优化代码
+8. 修复google登录无法获取用户信息的问题
+9. 优化代码
### 2019/07/18
From 93c301e05b3a417442caf9215b0ae74402bfaeff Mon Sep 17 00:00:00 2001
From: "yadong.zhang"
Date: Fri, 19 Jul 2019 22:25:44 +0800
Subject: [PATCH 6/8] =?UTF-8?q?:zap:=20=E4=BC=98=E5=8C=96=E4=BB=A3?=
=?UTF-8?q?=E7=A0=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../oauth/request/AuthLinkedinRequest.java | 10 +++----
.../java/me/zhyd/oauth/utils/CustomTest.java | 27 +++++++++++++++++++
2 files changed, 30 insertions(+), 7 deletions(-)
diff --git a/src/main/java/me/zhyd/oauth/request/AuthLinkedinRequest.java b/src/main/java/me/zhyd/oauth/request/AuthLinkedinRequest.java
index b552256..7a636ac 100644
--- a/src/main/java/me/zhyd/oauth/request/AuthLinkedinRequest.java
+++ b/src/main/java/me/zhyd/oauth/request/AuthLinkedinRequest.java
@@ -4,6 +4,7 @@ import cn.hutool.http.HttpRequest;
import cn.hutool.http.HttpResponse;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
+import com.alibaba.fastjson.JSONPath;
import me.zhyd.oauth.config.AuthConfig;
import me.zhyd.oauth.config.AuthSource;
import me.zhyd.oauth.enums.AuthUserGender;
@@ -120,13 +121,8 @@ public class AuthLinkedinRequest extends AuthDefaultRequest {
.execute();
JSONObject emailObj = JSONObject.parseObject(emailResponse.body());
this.checkResponse(emailObj);
- if (emailObj.containsKey("elements")) {
- email = emailObj.getJSONArray("elements")
- .getJSONObject(0)
- .getJSONObject("handle~")
- .getString("emailAddress");
- }
- return email;
+ Object obj = JSONPath.eval(emailObj, "$['elements'][0]['handle~']['emailAddress']");
+ return null == obj ? null : (String) obj;
}
private String getUserName(JSONObject userInfoObject, String nameKey) {
diff --git a/src/test/java/me/zhyd/oauth/utils/CustomTest.java b/src/test/java/me/zhyd/oauth/utils/CustomTest.java
index eab7ddd..b7a7c65 100644
--- a/src/test/java/me/zhyd/oauth/utils/CustomTest.java
+++ b/src/test/java/me/zhyd/oauth/utils/CustomTest.java
@@ -1,7 +1,16 @@
package me.zhyd.oauth.utils;
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
+import com.alibaba.fastjson.JSONPath;
import org.junit.Test;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
/**
* @author yadong.zhang (yadong.zhang0415(a)gmail.com)
* @version 1.0
@@ -60,4 +69,22 @@ public class CustomTest {
// }
return stackTrace[2].getMethodName();
}
+
+ @Test
+ public void jsonpath(){
+ List
-
+
@@ -15,7 +15,7 @@
-
+
@@ -76,7 +76,7 @@ JustAuth,如你所见,它仅仅是一个**第三方授权登录**的**工具
me.zhyd.oauth
JustAuth
- 1.8.1
+ 1.9.0
```
- 调用api
diff --git a/src/main/java/me/zhyd/oauth/request/AuthPinterestRequest.java b/src/main/java/me/zhyd/oauth/request/AuthPinterestRequest.java
index b31893a..17ec8e2 100644
--- a/src/main/java/me/zhyd/oauth/request/AuthPinterestRequest.java
+++ b/src/main/java/me/zhyd/oauth/request/AuthPinterestRequest.java
@@ -20,7 +20,7 @@ import static me.zhyd.oauth.config.AuthSource.PINTEREST;
*
* @author hongwei.peng (pengisgood(at)gmail(dot)com)
* @version 1.9.0
- * @since 1.9.0
+ * @since 1.8
*/
public class AuthPinterestRequest extends AuthDefaultRequest {
diff --git a/src/main/java/me/zhyd/oauth/request/AuthRenrenRequest.java b/src/main/java/me/zhyd/oauth/request/AuthRenrenRequest.java
index 7a16b45..c1fb3b6 100644
--- a/src/main/java/me/zhyd/oauth/request/AuthRenrenRequest.java
+++ b/src/main/java/me/zhyd/oauth/request/AuthRenrenRequest.java
@@ -19,8 +19,8 @@ import static me.zhyd.oauth.model.AuthResponseStatus.SUCCESS;
* 人人登录
*
* @author hongwei.peng (pengisgood(at)gmail(dot)com)
- * @version 1.8.1
- * @since 1.8.1
+ * @version 1.9.0
+ * @since 1.8
*/
public class AuthRenrenRequest extends AuthDefaultRequest {
diff --git a/src/main/java/me/zhyd/oauth/request/AuthStackOverflowRequest.java b/src/main/java/me/zhyd/oauth/request/AuthStackOverflowRequest.java
index 655c9c5..c23439e 100644
--- a/src/main/java/me/zhyd/oauth/request/AuthStackOverflowRequest.java
+++ b/src/main/java/me/zhyd/oauth/request/AuthStackOverflowRequest.java
@@ -19,7 +19,7 @@ import static me.zhyd.oauth.utils.GlobalAuthUtil.parseQueryToMap;
*
* @author hongwei.peng (pengisgood(at)gmail(dot)com)
* @version 1.9.0
- * @since 1.9.0
+ * @since 1.8
*/
public class AuthStackOverflowRequest extends AuthDefaultRequest {
From 798e7556ba759b2d514d3657a3233540d7b3198d Mon Sep 17 00:00:00 2001
From: "yadong.zhang"
Date: Sat, 20 Jul 2019 17:21:21 +0800
Subject: [PATCH 8/8] =?UTF-8?q?:bookmark:=20=E5=A2=9E=E5=8A=A0`stackoverfl?=
=?UTF-8?q?ow`=E5=8F=82=E6=95=B0=E6=A0=A1=E9=AA=8C=E3=80=81=E8=A7=A3?=
=?UTF-8?q?=E5=86=B3`Pinterest`=E8=8E=B7=E5=8F=96=E7=94=A8=E6=88=B7?=
=?UTF-8?q?=E5=A4=B1=E8=B4=A5=E7=9A=84=E9=97=AE=E9=A2=98=EF=BC=8C=E5=8F=91?=
=?UTF-8?q?=E5=B8=83v1.9.1?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
README.md | 8 ++++----
pom.xml | 4 ++--
.../oauth/request/AuthDefaultRequest.java | 4 ++++
.../oauth/request/AuthDingTalkRequest.java | 2 +-
.../zhyd/oauth/request/AuthGoogleRequest.java | 2 +-
.../oauth/request/AuthLinkedinRequest.java | 2 +-
.../me/zhyd/oauth/request/AuthMiRequest.java | 2 +-
.../oauth/request/AuthMicrosoftRequest.java | 4 ++--
.../oauth/request/AuthOschinaRequest.java | 2 +-
.../oauth/request/AuthPinterestRequest.java | 19 +++++++++++++++----
.../zhyd/oauth/request/AuthRenrenRequest.java | 2 +-
.../zhyd/oauth/request/AuthWeiboRequest.java | 2 +-
.../java/me/zhyd/oauth/utils/AuthChecker.java | 3 +++
.../me/zhyd/oauth/utils/GlobalAuthUtil.java | 2 +-
.../java/me/zhyd/oauth/utils/UrlBuilder.java | 1 -
update.md | 6 ++++++
16 files changed, 44 insertions(+), 21 deletions(-)
diff --git a/README.md b/README.md
index 75469ba..e9758b9 100644
--- a/README.md
+++ b/README.md
@@ -6,7 +6,7 @@
-
+
@@ -15,7 +15,7 @@
-
+
@@ -76,7 +76,7 @@ JustAuth,如你所见,它仅仅是一个**第三方授权登录**的**工具
me.zhyd.oauth
JustAuth
- 1.9.0
+ 1.9.1
```
- 调用api
@@ -148,7 +148,7 @@ _请知悉:经咨询CSDN官方客服得知,CSDN的授权开放平台已经
2. 把fork过去的项目也就是你仓库中的项目clone到你的本地
3. 修改代码
4. commit后push到自己的库
-5. 发起PR(pull request) 请求
+5. 发起PR(pull request) 请求,提交到`dev`分支
6. 等待作者合并
## 致谢
diff --git a/pom.xml b/pom.xml
index e7a80e8..32f3962 100644
--- a/pom.xml
+++ b/pom.xml
@@ -6,7 +6,7 @@
me.zhyd.oauth
JustAuth
- 1.9.0
+ 1.9.1
JustAuth
https://gitee.com/yadong.zhang/JustAuth
@@ -190,4 +190,4 @@
-
\ No newline at end of file
+
diff --git a/src/main/java/me/zhyd/oauth/request/AuthDefaultRequest.java b/src/main/java/me/zhyd/oauth/request/AuthDefaultRequest.java
index ca0491d..1774a15 100644
--- a/src/main/java/me/zhyd/oauth/request/AuthDefaultRequest.java
+++ b/src/main/java/me/zhyd/oauth/request/AuthDefaultRequest.java
@@ -80,6 +80,7 @@ public abstract class AuthDefaultRequest implements AuthRequest {
/**
* 返回获取accessToken的url
*
+ * @param code 授权码
* @return 返回获取accessToken的url
*/
protected String accessTokenUrl(String code) {
@@ -95,6 +96,7 @@ public abstract class AuthDefaultRequest implements AuthRequest {
/**
* 返回获取accessToken的url
*
+ * @param refreshToken refreshToken
* @return 返回获取accessToken的url
*/
protected String refreshTokenUrl(String refreshToken) {
@@ -110,6 +112,7 @@ public abstract class AuthDefaultRequest implements AuthRequest {
/**
* 返回获取userInfo的url
*
+ * @param authToken token
* @return 返回获取userInfo的url
*/
protected String userInfoUrl(AuthToken authToken) {
@@ -119,6 +122,7 @@ public abstract class AuthDefaultRequest implements AuthRequest {
/**
* 返回获取revoke authorization的url
*
+ * @param authToken token
* @return 返回获取revoke authorization的url
*/
protected String revokeUrl(AuthToken authToken) {
diff --git a/src/main/java/me/zhyd/oauth/request/AuthDingTalkRequest.java b/src/main/java/me/zhyd/oauth/request/AuthDingTalkRequest.java
index 1b2d9a4..ce0f52f 100644
--- a/src/main/java/me/zhyd/oauth/request/AuthDingTalkRequest.java
+++ b/src/main/java/me/zhyd/oauth/request/AuthDingTalkRequest.java
@@ -76,7 +76,7 @@ public class AuthDingTalkRequest extends AuthDefaultRequest {
/**
* 返回获取userInfo的url
*
- * @param authToken
+ * @param authToken 用户授权后的token
* @return 返回获取userInfo的url
*/
@Override
diff --git a/src/main/java/me/zhyd/oauth/request/AuthGoogleRequest.java b/src/main/java/me/zhyd/oauth/request/AuthGoogleRequest.java
index bb648d3..61b4f7f 100644
--- a/src/main/java/me/zhyd/oauth/request/AuthGoogleRequest.java
+++ b/src/main/java/me/zhyd/oauth/request/AuthGoogleRequest.java
@@ -80,7 +80,7 @@ public class AuthGoogleRequest extends AuthDefaultRequest {
/**
* 返回获取userInfo的url
*
- * @param authToken
+ * @param authToken 用户授权后的token
* @return 返回获取userInfo的url
*/
@Override
diff --git a/src/main/java/me/zhyd/oauth/request/AuthLinkedinRequest.java b/src/main/java/me/zhyd/oauth/request/AuthLinkedinRequest.java
index 7a636ac..e22a741 100644
--- a/src/main/java/me/zhyd/oauth/request/AuthLinkedinRequest.java
+++ b/src/main/java/me/zhyd/oauth/request/AuthLinkedinRequest.java
@@ -200,7 +200,7 @@ public class AuthLinkedinRequest extends AuthDefaultRequest {
/**
* 返回获取userInfo的url
*
- * @param authToken
+ * @param authToken 用户授权后的token
* @return 返回获取userInfo的url
*/
@Override
diff --git a/src/main/java/me/zhyd/oauth/request/AuthMiRequest.java b/src/main/java/me/zhyd/oauth/request/AuthMiRequest.java
index 8d7edb6..0ac9e00 100644
--- a/src/main/java/me/zhyd/oauth/request/AuthMiRequest.java
+++ b/src/main/java/me/zhyd/oauth/request/AuthMiRequest.java
@@ -128,7 +128,7 @@ public class AuthMiRequest extends AuthDefaultRequest {
/**
* 返回获取userInfo的url
*
- * @param authToken
+ * @param authToken 用户授权后的token
* @return 返回获取userInfo的url
*/
@Override
diff --git a/src/main/java/me/zhyd/oauth/request/AuthMicrosoftRequest.java b/src/main/java/me/zhyd/oauth/request/AuthMicrosoftRequest.java
index 0fc34b8..addd187 100644
--- a/src/main/java/me/zhyd/oauth/request/AuthMicrosoftRequest.java
+++ b/src/main/java/me/zhyd/oauth/request/AuthMicrosoftRequest.java
@@ -139,7 +139,7 @@ public class AuthMicrosoftRequest extends AuthDefaultRequest {
/**
* 返回获取userInfo的url
*
- * @param authToken
+ * @param authToken 用户授权后的token
* @return 返回获取userInfo的url
*/
@Override
@@ -150,7 +150,7 @@ public class AuthMicrosoftRequest extends AuthDefaultRequest {
/**
* 返回获取accessToken的url
*
- * @param refreshToken
+ * @param refreshToken 用户授权后的token
* @return 返回获取accessToken的url
*/
@Override
diff --git a/src/main/java/me/zhyd/oauth/request/AuthOschinaRequest.java b/src/main/java/me/zhyd/oauth/request/AuthOschinaRequest.java
index 0766de1..58cc743 100644
--- a/src/main/java/me/zhyd/oauth/request/AuthOschinaRequest.java
+++ b/src/main/java/me/zhyd/oauth/request/AuthOschinaRequest.java
@@ -77,7 +77,7 @@ public class AuthOschinaRequest extends AuthDefaultRequest {
/**
* 返回获取userInfo的url
*
- * @param authToken
+ * @param authToken 用户授权后的token
* @return 返回获取userInfo的url
*/
@Override
diff --git a/src/main/java/me/zhyd/oauth/request/AuthPinterestRequest.java b/src/main/java/me/zhyd/oauth/request/AuthPinterestRequest.java
index 17ec8e2..a8f5c38 100644
--- a/src/main/java/me/zhyd/oauth/request/AuthPinterestRequest.java
+++ b/src/main/java/me/zhyd/oauth/request/AuthPinterestRequest.java
@@ -43,10 +43,8 @@ public class AuthPinterestRequest extends AuthDefaultRequest {
@Override
protected AuthUser getUserInfo(AuthToken authToken) {
- String userinfoUrl = UrlBuilder.fromBaseUrl(userInfoUrl(authToken))
- .queryParam("fields", "id,username,first_name,last_name,bio,image")
- .build();
- HttpResponse response = HttpRequest.post(userinfoUrl).execute();
+ String userinfoUrl = userInfoUrl(authToken);
+ HttpResponse response = HttpRequest.get(userinfoUrl).setFollowRedirects(true).execute();
JSONObject object = JSONObject.parseObject(response.body());
this.checkResponse(object);
JSONObject userObj = object.getJSONObject("data");
@@ -82,6 +80,19 @@ public class AuthPinterestRequest extends AuthDefaultRequest {
.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();
+ }
+
/**
* 检查响应内容是否正确
*
diff --git a/src/main/java/me/zhyd/oauth/request/AuthRenrenRequest.java b/src/main/java/me/zhyd/oauth/request/AuthRenrenRequest.java
index c1fb3b6..6888764 100644
--- a/src/main/java/me/zhyd/oauth/request/AuthRenrenRequest.java
+++ b/src/main/java/me/zhyd/oauth/request/AuthRenrenRequest.java
@@ -100,7 +100,7 @@ public class AuthRenrenRequest extends AuthDefaultRequest {
/**
* 返回获取userInfo的url
*
- * @param authToken
+ * @param authToken 用户授权后的token
* @return 返回获取userInfo的url
*/
@Override
diff --git a/src/main/java/me/zhyd/oauth/request/AuthWeiboRequest.java b/src/main/java/me/zhyd/oauth/request/AuthWeiboRequest.java
index 0297ba7..cf1df17 100644
--- a/src/main/java/me/zhyd/oauth/request/AuthWeiboRequest.java
+++ b/src/main/java/me/zhyd/oauth/request/AuthWeiboRequest.java
@@ -76,7 +76,7 @@ public class AuthWeiboRequest extends AuthDefaultRequest {
/**
* 返回获取userInfo的url
*
- * @param authToken
+ * @param authToken authToken
* @return 返回获取userInfo的url
*/
@Override
diff --git a/src/main/java/me/zhyd/oauth/utils/AuthChecker.java b/src/main/java/me/zhyd/oauth/utils/AuthChecker.java
index b4e3655..33b59c3 100644
--- a/src/main/java/me/zhyd/oauth/utils/AuthChecker.java
+++ b/src/main/java/me/zhyd/oauth/utils/AuthChecker.java
@@ -26,6 +26,9 @@ public class AuthChecker {
if (isSupported && AuthSource.ALIPAY == source) {
isSupported = StringUtils.isNotEmpty(config.getAlipayPublicKey());
}
+ if (isSupported && AuthSource.STACK_OVERFLOW == source) {
+ isSupported = StringUtils.isNotEmpty(config.getStackOverflowKey());
+ }
return isSupported;
}
diff --git a/src/main/java/me/zhyd/oauth/utils/GlobalAuthUtil.java b/src/main/java/me/zhyd/oauth/utils/GlobalAuthUtil.java
index 634463f..88928c1 100644
--- a/src/main/java/me/zhyd/oauth/utils/GlobalAuthUtil.java
+++ b/src/main/java/me/zhyd/oauth/utils/GlobalAuthUtil.java
@@ -45,7 +45,7 @@ public class GlobalAuthUtil {
}
}
- private static String urlEncode(String value) {
+ public static String urlEncode(String value) {
if (value == null) {
return "";
}
diff --git a/src/main/java/me/zhyd/oauth/utils/UrlBuilder.java b/src/main/java/me/zhyd/oauth/utils/UrlBuilder.java
index f34be27..e392f05 100644
--- a/src/main/java/me/zhyd/oauth/utils/UrlBuilder.java
+++ b/src/main/java/me/zhyd/oauth/utils/UrlBuilder.java
@@ -14,7 +14,6 @@ import java.util.Map;
*
*
* @author yangkai.shen (https://xkcoding.com)
- * @date Created in 2019-07-18 15:47
* @version 1.0
* @since 1.8
*/
diff --git a/update.md b/update.md
index 70d7689..d4ba6fd 100644
--- a/update.md
+++ b/update.md
@@ -1,5 +1,11 @@
### 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,避免安全漏洞
2. `AuthUserGender`枚举类挪到`enums`包下
3. 删除`AuthBaiduErrorCode`和`AuthDingTalkErrorCode`枚举类