johnswang
2022-10-28 077dbf464f513ead41abf6e0103eafbe4286dd2c
修正QQ登录拉取用户信息UserInfo时null值问题
3个文件已修改
14 ■■■■ 已修改文件
src/com/qq/connect/QQConnect.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/com/qq/connect/api/qzone/UserInfo.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/com/yc/sdk/oauth2/action/OAuth2ForQQ.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/com/qq/connect/QQConnect.java
@@ -22,6 +22,12 @@
        this.client.setToken(token);
        this.client.setOpenID(openID);
    }
    protected QQConnect(String token, String openID,ServletRequest request) {
        this.client.setToken(token);
        this.client.setOpenID(openID);
        this.keyPre = QQConnectConfig.getPreKey(request);
    }
    protected void setToken(String token) {
        this.client.setToken(token);
src/com/qq/connect/api/qzone/UserInfo.java
@@ -1,5 +1,7 @@
package com.qq.connect.api.qzone;
import javax.servlet.ServletRequest;
import com.qq.connect.QQConnect;
import com.qq.connect.QQConnectException;
import com.qq.connect.javabeans.qzone.UserInfoBean;
@@ -10,8 +12,8 @@
        extends QQConnect {
    private static final long serialVersionUID = -6124397423510235640L;
    public UserInfo(String token, String openID) {
        super(token, openID);
    public UserInfo(String token, String openID,ServletRequest request) {
        super(token, openID,request);
    }
    private UserInfoBean getUserInfo(String openid)
src/com/yc/sdk/oauth2/action/OAuth2ForQQ.java
@@ -183,7 +183,7 @@
                //PrintWriter out = response.getWriter();
                
                //out.println("欢迎你,代号为 " + openID + " 的用户!"+"<br/>");
                UserInfo qzoneUserInfo = new UserInfo(accessToken, openId);
                UserInfo qzoneUserInfo = new UserInfo(accessToken, openId,request);
                UserInfoBean userInfoBean = qzoneUserInfo.getUserInfo();
                if (userInfoBean.getRet() == 0) {
                    String dbId = oauth2InfoEntity.getDbid();