想在自己网站实现用新浪微博帐号登录的功能,研究新浪微博开放平台好长时间了,也下载了JAVA版的SDK。
但是研究下载的例子感觉有疑惑:
1、我将下载的代码用jdk5.0编译报错,我没仔细研究报错原因,看到网上有人说只能用jdk6.0,不知道是不是这样?
2、下载的例子中OAuth4Code这个类里面写的是main方法,里面有打开新浪微博登录页面的代码,这样是只能在服务器电脑上打开吗?对于web网站用户肯定需要在自己电脑上打开微博登录页面啊。新浪开放平台网站上介绍用微博帐号登录的页面看了好几遍了,就是没弄懂怎么做,下载的SDK也没有相应的doc文档,而且都还是源码,郁闷!
哪位能帮下小弟,告诉我一个简单的例子,比如可以结合servlet或者struts控制器等,有打开登录授权及返回后获取微博帐号基本信息的功能就行。先谢谢各位了!
但是研究下载的例子感觉有疑惑:
1、我将下载的代码用jdk5.0编译报错,我没仔细研究报错原因,看到网上有人说只能用jdk6.0,不知道是不是这样?
2、下载的例子中OAuth4Code这个类里面写的是main方法,里面有打开新浪微博登录页面的代码,这样是只能在服务器电脑上打开吗?对于web网站用户肯定需要在自己电脑上打开微博登录页面啊。新浪开放平台网站上介绍用微博帐号登录的页面看了好几遍了,就是没弄懂怎么做,下载的SDK也没有相应的doc文档,而且都还是源码,郁闷!
哪位能帮下小弟,告诉我一个简单的例子,比如可以结合servlet或者struts控制器等,有打开登录授权及返回后获取微博帐号基本信息的功能就行。先谢谢各位了!
解决方案 »
- Oracle service bus 有人会吗?
- org.springframework.dao.DataAccessResourceFailureException: Cannot open connecti
- Tomcat部署问题(请高手解答)
- 跪求 JAVA 多彩编辑器 !
- 怎么使用sql sp4补丁啊,tomcat连接sql还要怎么配置?
- 关于lomboz-eclipse-emf-gef-jem-3.1RC2.zip这个已经集成了Eclipse3.0的LOMBOZ
- 请问如何将文本框中的内容放到数组中?
- 如何配置jsp,一早上了!!!
- jsp和FLASH参数交互
- 请问jbuilder可以显示jsp的运行结果吗?
- 关于修改linux系统下tomcat java jvm的默认编码的错误问题
- 求个正则:在js里面用正则获取字符串中的Ip地址
这个demo的确只能在服务端执行,但是并不是说这个提供的接口只能在服务端执行。
事实上,你可以先简单的把main封装成一个方法,然后接收两个参数:username和password。再写一个简单的网页,让用户填上用户名和密码,然后提交到服务端调用你写好的方法,成功后跳转页面就好,并不难的。
流程大概是这样,在自己的网站上有一个比如"用QQ登录"的超链接,点击后跳转到QQ开放登录端口的指定页。跳转过程中同时发送开放接口指定的相关参数参数,比如网站通行证,结果成功返回页面(这个对应着自己网站的页面),失败返回页面(这个也对应着自己网站的页面)等。这样,整个验证过程与自己的网站无关,只有结果与自己的网站相关。
新浪微博开放平台网站对于微博登录介绍的挺简单(当然对于高手来说这些信息已经够了),但是这些信息都是切中了要点。如果有通过java使用http协议的开发经验,结合网站介绍,再读一下接口调用源码,很快整个过程就会了如指掌。可惜我当初就是想偷懒而且又没静下心来仔细研究代码,导致我浪费了这么多时间。
整个过程解决了如下问题:
1、代码不支持jdk5.0。代码中使用了string.isEmpty()这个方法,jdk5.0中没有此方法,改下代码实现同等功能即可。
2、打包src资源包下的代码。下载的代码中src资源包下的代码是提供API调用的,因为不想在项目中添加这些源码,于是将这些代码打包,并且在项目中引入。
3、关于登录授权及返回信息处理。在项目中写了一个servlet通过response重定向到配置文件中的登录授权地址(地址中已经根据配置指定好了相关参数);用户登录授权后回调地址同样是一个servlet(这个servlet一定要跟在微博开放平台中配置的一样),在该servlet中首先通过请求参数code获取值,然后将获取的值进行组装通过java调用http协议获取access_token,再根据获取的access_token调用相关的接口获取信息(这些步骤在下载的代码中都有,稍作修改既可使用)
这就是我总结的经验,希望大家多多交流,另外欢迎大家光临我的小站 好望角 www.hopercorner.com ,微博登录功能目前正处于微博开放平台审核过程中,已经通过了测试微博帐号的测试,审核通过后大家既可通过微博帐号登录。
<script src="http://tjs.sjs.sinajs.cn/open/api/js/wb.js?appkey=3814830281" type="text/javascript" charset="utf-8"></script>
<wb:login-button type="3,2">登录按钮</wb:login-button>
但是项目运行后点击登录按钮没反应。不知道哪里不对。