大家应该很多都用过新浪微博,最近在写项目时候用到微博的功能,比如授权登陆,发微博,微博信息显示等等。

        可是国内这些接口的文档,笔者实在不敢恭维。在请教了老师之后。终于完成了部分功能,”上路了“。分享给大家,希望大家不至于像我一样走弯路。

       1:首先用自己的新浪微博账号密码登陆。新浪微博开发平台。http://open.weibo.com/,我们想要使用新浪微博的接口,必须首先注册一个应用。我选择的是站内应用》创建应用。

 

我们可以随意填写内容,因为我们注册的应用除非商用是不能提交成功的,所以放心创建。

2:创建完成之后,系统自动转到完善信息页面。在这个页面大家把相关的信息进行完善,

这里面有一个回调地址,大家可以选择任何网址,只要是合法的,我选择的是新浪微博默认的回调地址https://api.weibo.com/oauth2/default.html:保存

 

3:保存以后取出上图中的APP key, APP screct..

4:

 

创建测试用的账号,我是把自己的微博账号绑定为测试账号。

5:好累啊,可是怎么能发送微博呢,现在需要下载新浪微sdk.http://open.weibo.com/wiki/SDK,我下载的是java的sdk.下载完毕以后解压后,使用myeclipse引入进去,目录结构为:

 

上面有一个readme.txt.里面的内容就是在config.properties.配置刚才我们获取到的appkey, app-secret.redirect_url.(回掉地址),config.properties文件默认的位置为src目录下。

6:配置完毕以后选择example > weibo4j.example.oauth2目录下的OAUTH4Code.java。打开以后,直接运行的话会发现错误,因为需要输入两个参数,我们把这两个参数都设为null、具体原因我还不知道。具体代码如下:

 
  
  1. BareBonesBrowserLaunch.openURL(oauth.authorize("code",null,null));  
  2. //  System.out.println(oauth.authorize("code",args[0],args[1])); 

按照新浪微博官方的回答,这个是下一代用户验证和授权标准,具体的是什么情参考百度百科http://baike.baidu.com/view/6619164.htm

7:然后点击运行,会弹出一个浏览器窗口,点击授权。

出现这样的窗口

 

 

把浏览器输入框中的code后面的字符串复制。并且粘贴到myeclipse运行窗口中。

 

回车后下面就会出现 access_token这个字符串,然后把后面的字符串复制出来。

8:下面就可以发微博了。好开心。

找到example.weibo4j.examples/timeline.这个名称就是微博的意思。真是太扯了,下面的UpdateStatus.java

把里面的assess_token替换为刚才复制的字符串。status为微博的内容,填写,然后点击运行,

 

9:登陆你的微博看看是不是已经有这条消息了。

10:完成,到了现在你应该已经明白其中的原理了,现在就可以根据官方文档,和example例子中的程序来完善自己的微博功能了、官方文档地址:http://open.weibo.com/wiki/API%E6%96%87%E6%A1%A3_V2#.E5.BE.AE.E5.8D.9A

遇到的问题:

   我在刚开始创建的时候更换了回调地址,结果造成找不到地址。浏览器中出现了错误信息。如果你在部署这个例子项目的时候,项目出错,并且错误原因是找不到config,properties,文件,请删除本地磁盘workspace中本项目bin目录下的文件并且点击工具栏中的project <clear,清除原先的项目。