现在的位置: 首页 > 综合 > 正文

新浪微博客户端源代码-新浪微博OAuth2.0接口

2013年08月18日 ⁄ 综合 ⁄ 共 1308字 ⁄ 字号 评论关闭

现在在api.weibo.com上看到新浪微博的API推出了2.0版本,其中最大的不同是采用了OAuth2.0授权机制,而且是在不久的将来(还没有时间表),新浪将全部不支持OAuth1.0,现在都开始了,我计划将我的应用也移到OAuth2.0,结果从昨天晚上,到今天上午,花了很长的时间读新的API,越读越失望,现将其中的OAuth2.0授权认证机制开发心得贴出来,供大伙参考。

前言:要是现在调用V1的接口就会出现如下的错误:

40109:consumer_key_refused!//刚开始搞了好久都不知道哪里错了 所以大家不要犯这个错误哈





第一步:修改Config.properties的配置信息.打开这个文件,将你的信息填入,具体如下:

client_ID = (你申请应用的appkey)                      
    client_SERCRET =(你申请应用的app_secret)

redirect_URI =(回调地址,跟网上配置的一致) 例如下图一定要填写正确 
    baseURL =https://api.weibo.com/2/
    accessTokenURL =https://api.weibo.com/2/oauth2/access_token
    authorizeURL =https://api.weibo.com/2/oauth2/authorize

第二步打开example目录下的文件OAuth4Code.java,code如下图

新浪微博客户端源代码-新浪微博OAuth2.0接口

可能oauth.authorize("code") 会报错,我们进去重新修改一下参数,只留下第一个

 

第三步:运行此文件,浏览器会自动打开一个网页,如下图.在里面输入你的账号、密码,点击“登陆并授权”(要是你已经登陆了微博就不用了)

新浪微博客户端源代码-新浪微博OAuth2.0接口

    第四步:登陆后,浏览器会自动跳转到回调页面(由于我没有自己的网站,没有填回调页面,所以浏览器会打开一个第三方授权错误的界面),把地址栏中的“https://api.weibo.com/2/oauth2/authorize?code=XXXXX”中的XXX 或者直接在控制台能看见中,然后回车.

新浪微博客户端源代码-新浪微博OAuth2.0接口
新浪微博客户端源代码-新浪微博OAuth2.0接口

第五步:将获取到的"access_token"(在控制台输出中查找)填入到ShowUser.java文件中,进行如下操作,然后运行程序,将返回你的个人信息。

String access_token = args[0];将args[0]修改为刚才取得的"access_token";

String uid = args[1]; 将args[1]修改为刚才授权用户的ID号;

新浪微博客户端源代码-新浪微博OAuth2.0接口获得用户姓名
Jackrex1993 


 

总结:OAuth2.0的桌面应用非常不友好,以前在1.0中用PIN码授权时,至少用户可以将PIN码从授权页面填入程序的页面,现在的CODE放在地址栏中,只有专业人士才会用,真心搞不懂新浪的API写的乱七八糟的。。。哎。

OAuth2.0 API地址:http://open.weibo.com/wiki/Oauth2

http://code.google.com/p/weibo4j/这里下载包 后面的两个是V oauth 1的就不要用了

抱歉!评论已关闭.