开发平台
http://connect.qq.com/
http://open.weibo.com/
可以下载相应的sdk 和 API
Java代码
-
12
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
package
com.fanbaobao.action;
import
javax.servlet.http.HttpServletRequest;
import
javax.servlet.http.HttpServletResponse;
import
javax.servlet.http.HttpSession;
import
com.fanbaobao.service.FbbUser;
import
com.fanbaobao.service.FbbService.Client;
import
com.fanbaobao.util.FbbUtil;
import
weibo4j.Oauth;
import
weibo4j.Users;
import
weibo4j.Weibo;
import
weibo4j.http.AccessToken;
import
weibo4j.model.User;
public
class
SinaAction
extends
BaseAction {
private
String errorMsg;
public
String toLogin()
throws
Exception{
try
{
HttpServletRequest request=getRequest();
Oauth oauth=
new
Oauth();
getResponse().sendRedirect(oauth.authorize(
"code"
));
//重定向到新浪授权页面
}
catch
(Exception e) {
e.printStackTrace();
}
return
null
;
}
/**
* 新浪微博登录的回调
* @return
* @throws Exception
*/
public
String doLogin()
throws
Exception{
HttpServletRequest request=getRequest();
HttpSession session=request.getSession();
String accesstoken =
null
;
String code=request.getParameter(
"code"
);
if
(code!=
null
)
{
Oauth oauth=
new
Oauth();
AccessToken accessToken=oauth.getAccessTokenByCode(code);
accesstoken=accessToken.getAccessToken();
if
(accessToken!=
null
)
{
Weibo weibo=
new
Weibo();
weibo.setToken(accessToken.getAccessToken());
Users users=
new
Users();
User weiboUser=users.showUserById(accessToken.getUid());
HttpServletResponse response=getResponse();
System.out.println(weiboUser.getId());
System.out.println(weiboUser.getGender());
System.out.println(weiboUser.getName());
System.out.println(accesstoken);
// if(first<2){
// if(first==1){ //用户第一次登录,发一条微博,且follow 51bi
// Timeline timeline=new Timeline();
// timeline.UpdateStatus("我注册成为了#比购网#会员,免费注册后去淘宝购物,最高有35%的现金返还。最给力的是:到拉手、京东商城、1号店等400多家知名商城不仅能享受最低价格,还能额外省钱40%。喜欢网购的童鞋都去注册一个省钱吧!官方网址:http://www.51bi.com/space/biuser/register.jsp?currentUrl=http://www.51bi.com/taobao/");
// try {
// Friendships fm = new Friendships();
// fm.createFriendshipsById("1718952754");//follow 51bi
// fm.createFriendshipsById("2908640880");//follow 51bi
// } catch (Exception e) {
// }
// }
//未完善资料
Client client = FbbUtil.getClient();
FbbUser fbbUser= client.doOauth(
1
, weiboUser.getId());
session.setAttribute(
"fbbUserInfo"
, fbbUser);
return
SUCCESS;
}
}
else
{
errorMsg=
"新浪oauth 认证请求非法!"
;
return
LOGIN;
}
return
SUCCESS;
}
public
String getErrorMsg() {
return
errorMsg;
}
public
void
setErrorMsg(String errorMsg) {
this
.errorMsg = errorMsg;
}
}
Java代码
-
12
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
package
com.fanbaobao.action;
import
javax.servlet.http.HttpServletRequest;
import
javax.servlet.http.HttpServletResponse;
import
javax.servlet.http.HttpSession;
import
com.fanbaobao.service.FbbUser;
import
com.fanbaobao.service.FbbService.Client;
import
com.fanbaobao.util.FbbUtil;
import
com.qq.connect.QQConnectException;
import
com.qq.connect.api.OpenID;
import
com.qq.connect.api.qzone.PageFans;
import
com.qq.connect.api.qzone.UserInfo;
import
com.qq.connect.javabeans.AccessToken;
import
com.qq.connect.javabeans.qzone.PageFansBean;
import
com.qq.connect.javabeans.qzone.UserInfoBean;
import
com.qq.connect.oauth.Oauth;
public
class
QzoneAction
extends
BaseAction {
private
String errorMsg;
public
String toLogin()
throws
Exception{
this
.getResponse().setContentType(
"text/html;charset=utf-8"
);
try
{
this
.getResponse().sendRedirect(
new
Oauth().getAuthorizeURL(
this
.getRequest()));
}
catch
(QQConnectException e) {
e.printStackTrace();
}
return
null
;
}
public
String doLogin()
throws
Exception{
HttpServletResponse response=
this
.getResponse();
HttpServletRequest request=
this
.getRequest();
HttpSession session=request.getSession();
response.setContentType(
"text/html; charset=utf-8"
);
try
{
AccessToken accessTokenObj =
(
new
Oauth()).getAccessTokenByRequest(request);
String accessToken =
null
,
openID =
null
;
Long tokenExpireIn =
null
;
if
(accessTokenObj.getAccessToken().equals(
""
)) {
errorMsg=
"QQ登录校验失败!"
;
return
LOGIN;
}
else
{
accessToken = accessTokenObj.getAccessToken();
tokenExpireIn = accessTokenObj.getExpireIn();
request.getSession().setAttribute(
"demo_access_token"
, accessToken);
request.getSession().setAttribute(
"demo_token_expirein"
, String.valueOf(tokenExpireIn));
OpenID openIDObj =
new
OpenID(accessToken);
openID = openIDObj.getUserOpenID();
request.getSession().setAttribute(
"demo_openid"
, openID);
UserInfo qzoneUserInfo =
new
UserInfo(accessToken, openID);
UserInfoBean userInfoBean = qzoneUserInfo.getUserInfo();
//
PageFans pageFansObj =
new
PageFans(accessToken, openID);
PageFansBean pageFansBean = pageFansObj.checkPageFans(
"97700000"
);
com.qq.connect.api.weibo.UserInfo weiboUserInfo =
new
com.qq.connect.api.weibo.UserInfo(accessToken, openID);
com.qq.connect.javabeans.weibo.UserInfoBean weiboUserInfoBean =
weiboUserInfo.getUserInfo();
// 第三方处理用户绑定逻辑
String user_id=openID;
String nickname=
new
String(userInfoBean.getNickname());
System.out.println(user_id);
System.out.println(nickname);
Client client = FbbUtil.getClient();
FbbUser fbbUser= client.doOauth(
2
, user_id);
session.setAttribute(
"fbbUserInfo"
, fbbUser);
return
SUCCESS;
// session.setAttribute("oauth_token", oauth_token);
// session.setAttribute("oauth_token_secret", oauth_token_secret);
// InterUser interUser=new InterUser(
Constants.LOGIN_FROM_QQ,user_id,
null
,nickname);
// interUser.setBiUserService(biUserService);
// interUser.setRuledao(ruledao);
// interUser.setAccesstoken(accessToken);
// if (tokenExpireIn!=null) {
// interUser.setExpireIn(String.valueOf(tokenExpireIn));
// }
// session.setAttribute("uid", user_id);
// session.setAttribute("fromsite", Constants.LOGIN_FROM_QQ);
// int first=interUser.doUserLogin(request,response,false); //接口登录
// if(first<2){
// session.setAttribute("loginname",nickname);
// if (first==-1) {
// session.setAttribute("msg","save userBind error");
// }else if (first==-2) {
// session.setAttribute("msg","error");
// }
// return "qzone";
// }
}
}
catch
(QQConnectException e) {
e.printStackTrace();
return
LOGIN;
}
}
public
String getErrorMsg() {
return
errorMsg;
}
public
void
setErrorMsg(String errorMsg) {
this
.errorMsg = errorMsg;
}
}
Java代码
- //login.properties
- ############
- #t.sina login
- ###########
- client_ID =xx
- client_SERCRET =xx
- redirect_URI =xxx
- baseURL=https://api.weibo.com/2/
- accessTokenURL=https://api.weibo.com/oauth2/access_token
- authorizeURL=https://api.weibo.com/oauth2/authorize
- ############
- #taoBao login
- ###########
- #TAOBAO_KEY=xxxx
- #TAOBAO_SECRET=xxxxxx
- #TAOBAO_REDIRECT=xxxx
- #authorizeURL=https://oauth.taobao.com/authorize
- #accessTokenURL=https://oauth.taobao.com/token
- //qqconnectconfig.properties
- app_ID = x
- app_KEY = xx
- redirect_URI = xxx
- scope = get_user_info,add_topic,add_one_blog,add_album,upload_pic,list_album,add_share,check_page_fans,add_t,
- add_pic_t,del_t,get_repost_list,get_info,get_other_info,get_fanslist,get_idollist,add_idol,del_ido,
- get_tenpay_addr
- baseURL = https://graph.qq.com/
- getUserInfoURL = https://graph.qq.com/user/get_user_info
- accessTokenURL = https://graph.qq.com/oauth2.0/token
- authorizeURL = https://graph.qq.com/oauth2.0/authorize
- getOpenIDURL = https://graph.qq.com/oauth2.0/me
- addTopicURL = https://graph.qq.com/shuoshuo/add_topic
- addBlogURL = https://graph.qq.com/blog/add_one_blog
- addAlbumURL = https://graph.qq.com/photo/add_album
- uploadPicURL = https://graph.qq.com/photo/upload_pic
- listAlbumURL = https://graph.qq.com/photo/list_album
- addShareURL = https://graph.qq.com/share/add_share
- checkPageFansURL = https://graph.qq.com/user/check_page_fans
- addTURL = https://graph.qq.com/t/add_t
- addPicTURL = https://graph.qq.com/t/add_pic_t
- delTURL = https://graph.qq.com/t/del_t
- getWeiboUserInfoURL = https://graph.qq.com/user/get_info
- getWeiboOtherUserInfoURL = https://graph.qq.com/user/get_other_info
- getFansListURL = https://graph.qq.com/relation/get_fanslist
- getIdolsListURL = https://graph.qq.com/relation/get_idollist
- addIdolURL = https://graph.qq.com/relation/add_idol
- delIdolURL = https://graph.qq.com/relation/del_idol
- getTenpayAddrURL = https://graph.qq.com/cft_info/get_tenpay_addr
- getRepostListURL = https://graph.qq.com/t/get_repost_list
- version = 2.0.0.0
转自:http://takeme.iteye.com/blog/1995874
特别说明:尊重作者的劳动成果,转载请注明出处哦~~~http://blog.yemou.net/article/query/info/tytfjhfascvhzxcyt313