zoukankan      html  css  js  c++  java
  • 新浪微博客户端源代码新浪微博OAuth2.0接口

    现在在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的就不要用了

  • 相关阅读:
    ACM进阶计划
    《算法竞赛入门经典》习题——Chapter 3
    js运算符
    Javascript的数据类型简述
    JS事件处理和事件对象
    对一道代码的看法
    SOA不是Web Service
    梳理一下最近要重点好学的东西
    ReportViewer使用手册
    Lesson 9
  • 原文地址:https://www.cnblogs.com/jackrex/p/3001297.html
Copyright © 2011-2022 走看看