详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcyt313
开发平台
http://connect.qq.com/
http://open.weibo.com/
可以下载相应的sdk 和 API
Java代码
-
- 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
packagecom.fanbaobao.action;importjavax.servlet.http.HttpServletRequest;importjavax.servlet.http.HttpServletResponse;importjavax.servlet.http.HttpSession;importcom.fanbaobao.service.FbbUser;importcom.fanbaobao.service.FbbService.Client;importcom.fanbaobao.util.FbbUtil;importweibo4j.Oauth;importweibo4j.Users;importweibo4j.Weibo;importweibo4j.http.AccessToken;importweibo4j.model.User;publicclassSinaActionextendsBaseAction {privateString errorMsg;publicString toLogin()throwsException{try{HttpServletRequest request=getRequest();Oauth oauth=newOauth();getResponse().sendRedirect(oauth.authorize("code"));//重定向到新浪授权页面}catch(Exception e) {e.printStackTrace();}returnnull;}/*** 新浪微博登录的回调* @return* @throws Exception*/publicString doLogin()throwsException{HttpServletRequest request=getRequest();HttpSession session=request.getSession();String accesstoken =null;String code=request.getParameter("code");if(code!=null){Oauth oauth=newOauth();AccessToken accessToken=oauth.getAccessTokenByCode(code);accesstoken=accessToken.getAccessToken();if(accessToken!=null){Weibo weibo=newWeibo();weibo.setToken(accessToken.getAccessToken());Users users=newUsers();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);returnSUCCESS;}}else{errorMsg="新浪oauth 认证请求非法!";returnLOGIN;}returnSUCCESS;}publicString getErrorMsg() {returnerrorMsg;}publicvoidsetErrorMsg(String errorMsg) {this.errorMsg = errorMsg;}}
Java代码
-
- 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118
packagecom.fanbaobao.action;importjavax.servlet.http.HttpServletRequest;importjavax.servlet.http.HttpServletResponse;importjavax.servlet.http.HttpSession;importcom.fanbaobao.service.FbbUser;importcom.fanbaobao.service.FbbService.Client;importcom.fanbaobao.util.FbbUtil;importcom.qq.connect.QQConnectException;importcom.qq.connect.api.OpenID;importcom.qq.connect.api.qzone.PageFans;importcom.qq.connect.api.qzone.UserInfo;importcom.qq.connect.javabeans.AccessToken;importcom.qq.connect.javabeans.qzone.PageFansBean;importcom.qq.connect.javabeans.qzone.UserInfoBean;importcom.qq.connect.oauth.Oauth;publicclassQzoneActionextendsBaseAction {privateString errorMsg;publicString toLogin()throwsException{this.getResponse().setContentType("text/html;charset=utf-8");try{this.getResponse().sendRedirect(newOauth().getAuthorizeURL(this.getRequest()));}catch(QQConnectException e) {e.printStackTrace();}returnnull;}publicString doLogin()throwsException{HttpServletResponse response=this.getResponse();HttpServletRequest request=this.getRequest();HttpSession session=request.getSession();response.setContentType("text/html; charset=utf-8");try{AccessToken accessTokenObj =(newOauth()).getAccessTokenByRequest(request);String accessToken =null,openID =null;Long tokenExpireIn =null;if(accessTokenObj.getAccessToken().equals("")) {errorMsg="QQ登录校验失败!";returnLOGIN;}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 =newOpenID(accessToken);openID = openIDObj.getUserOpenID();request.getSession().setAttribute("demo_openid", openID);UserInfo qzoneUserInfo =newUserInfo(accessToken, openID);UserInfoBean userInfoBean = qzoneUserInfo.getUserInfo();//PageFans pageFansObj =newPageFans(accessToken, openID);PageFansBean pageFansBean = pageFansObj.checkPageFans("97700000");com.qq.connect.api.weibo.UserInfo weiboUserInfo =newcom.qq.connect.api.weibo.UserInfo(accessToken, openID);com.qq.connect.javabeans.weibo.UserInfoBean weiboUserInfoBean =weiboUserInfo.getUserInfo();// 第三方处理用户绑定逻辑String user_id=openID;String nickname=newString(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);returnSUCCESS;// 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();returnLOGIN;}}publicString getErrorMsg() {returnerrorMsg;}publicvoidsetErrorMsg(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
-