SpringMVC 整合新浪微博登录 Java SDK
来源:互联网 发布:协同过滤推荐算法php 编辑:程序博客网 时间:2024/05/04 23:26
现在很多网站都整合了便捷的第三方登录,如QQ登录、新浪微博、搜狐、网易等,为用户提供不少方便和节约时间。我们可以选择使用JS或SDK实现第三方提供用户授权API,本文主要讲解 JAVA SDK 新浪微博登录授权以及获取用户资料。
注:本例子使用的是 SpringMVC,所以若想拷贝代码直接使用则需自己提前搭建好环境。
1、首先申请新浪微博网站接入:http://open.weibo.com/wiki/
2、成为开发者得到App Key和App Secret
3、下载weibo4j-oauth2:http://code.google.com/p/weibo4j/downloads/list
4、编写获取用户信息代码,搞定!
下载解压后,将src目录下weibo4j文件夹以及config.properties拷贝至自己 JAVA WEB 项目的src目录下。
编辑config.properties配置文件,改成成自己的资料。第一个填写你申请的App Key值,第二个填写App Secret值。
第三个redirect_URI,是你的重定向后的网址。应该对应一个控制器(Spring Controller)或 Servlet。在这里我们需要两个网址,第一个网址即用户在页面上点击的网址,能跳转到新浪微博账号登录界面,当用户点击账号登陆界面的登录按钮时,新浪微博会去校验资料正确性,一旦资料正确将会以 get 方式请求并且携带参数code重定向到你填写的redirect_URI,此时就能获取用户的资料了。
以小明博客为例,首先用户点击 http://www.bugxm.com/user/login-sian-weibo.html,我们接收请求后主要工作是重定向到新浪微博登录页面。代码片段如下:
代码片段中的session是为了获取用户登录前所在页面URL,方便登录完后重定向到登录之前的页面。其中url是新浪微博登录界面网址,我们只需要重定向过去就行了。
当用户在新浪微博登录成功后,会重定向到我们刚才填写的redirect_URI中,如我填写的 http://www.bugxm.com/user/login-sina-weibo.do,对应逻辑代码片段如下:
重定向过来会携带code参数我们把值取到用来获取用户的资料。本段代码中的除code、sinaWeiboLoginAction()外都是次要,对本文主题而言可有可无。我们来看看sinaWeiboLoginAction()代码片段:
其中String uid = accessToken.getUserUid();的getUserUid()方法本身是没有的,我们需要修改新浪微博的源代码,不然取uid非常麻烦。
编辑/src/weibo4j.http/AccessToken.java,在:
下面添加:
到此就搞定了。用户的其它资料已经很详细的注释在/src/weibo4j/model/User.java中了。
原文地址:http://www.bugxm.com/archive-110-1.html
- SpringMVC 整合新浪微博登录 Java SDK
- SpringMVC 整合新浪微博登录 Java SDK
- Android 整合新浪微博SDK问题
- 新浪微博开发flash SDK,判断登录状态不正常
- httpclient登录新浪微博(非SDK方式)
- [Android] 使用新浪微博SDK进行SSO登录
- 使用友盟SDK实现新浪微博登录
- Android新浪微博SDK登录功能接入
- 新浪微博Java SDK开发
- ECSHOP整合第三方登录,QQ登录、新浪微博登录、支付宝登
- java实现模拟登录新浪微博
- 新浪微博模拟登录 java实现
- 新浪微博模拟登录(Java)
- 新浪微博模拟登录(Java)
- Java 模拟登录新浪微博(Cookie)
- java 第三方登录之新浪微博登录
- 新浪微博登录
- 新浪微博登录
- Android 打开Gallery
- Struts2 action get Excel
- 设置UIView的frame时发生的崩溃。
- 寻求合作伙伴编写《深入理解 MonkeyRunner》书籍
- 1533Moving Pegs[暴力+打表]
- SpringMVC 整合新浪微博登录 Java SDK
- gem install libv8-3.16.14.5失败
- JS固定表头及固定左边列(续)-修正IE6/IE7兼容问题
- mysql c++ 乱码 解决方法
- iOS开发之详解@property属性(copy,strong,weak,nonatomic,readwrite等)
- Oracle SQL Developer 连接 Mysql 等数据库
- 揭秘京东商城核心技术:25位专家纯干货分享
- backbone
- PADS 电源分层及规则检查技巧