前一阵子研究了下twitter接口,发现网上的资料不是很多。遂花了些心血,终于有所收获~ 现在有时间赶紧整理出来便于自己以后查阅,也想帮助有困难的同学们。废话不多说,现在就以最简洁的方式开始了。注意:由于中国国情!访问twitter需要FQ,大家自己想办法。我用的是softEther这个软件,比较给力~

  一.OAuth认证

在Twitter未支持OAuth之前,使用的是Basic Auth认证,不过这都是几年前的事情了(我们不用管它),现在我们只需研究OAuth认证。现在就让我们注册一个twitter application!注册地址:http://dev.twitter.com/apps/new ,填写你twitter用户名和密码进去之后会让你填写name、website、Callback URL等,这些都很随意!值得注意的是callback url可以填写本地的地址,如: http://localhost:8080/receive.jsp。之后填写验证码就可以提交了。不出意外的话几分钟之后twitter就会给你返回一个注册成功页面,下面是我的成功页面:

值得注意的是开始Access level只有读的权限,具体要进行设置。进入my application页面->Setting页面,在此可以设置应用图标,权限等操作。好了!到此我们已经用OAuth注册了一个twitter应用了,下一步就要进行开发了。

二.twitter4j官网介绍

不得不说,twitter给开发者提供了相当好的文档和实例代码,接下来就可以逐步体会到。为我们提供的开发twitter接口名为twitter4j,地址为:http://twitter4j.org/en/index.html,里面有日文、韩文、和英文三种语言(很遗憾没有中文)~顺着左边的目录我们依次往下看,我认为比较重要的有:1.main->download,我们下载最新版本twitter4j-3.0.3.zip,这个文件夹里有文档、源码、事例代码、二进制文件等,一会我们将用到它进行开发。2.configuration->generic properties,这里提供了四种读取Access token的方式,同学们可以任意选择,反正我用的是.properties的方式,其中的Access token,Access token secret,Consumer key等见我们注册的应用信息。3.Api support matrix是完整的文档,读者可以参考里面的方法等。其实里面还有很多重要的信息,读者可以自行查阅。以后我们还会遇到更多崭新的技术,那时我们就会发现去相关官网获取信息是多么的重要!

三.本地twitter开发

现在我们在回头看看下载的twitter4j的包,如下图所示:

 其中twitter4j-async,twitter4j-core,twitter-examples,twitter4j-media-support,twitter4j-stream分别代表异步、twitter核心代码、实例代码、媒体支持和流等,具体的应用读者可自行查阅相关文档。这里我抛砖引玉,实现最基本的几个功能,从而实现快速入门~

打开eclipse->新建java project->取名字twitter->导入twitter4j-core包。至此环境搭建完成,接下来就可以实现twitter开发了!如果自己看文档敲代码的话其一效率不高其二容易出现错误。还好,twitter为我们提供了twitter-examples这个包,里面已经为我们写好了各个功能的实例代码,我们何乐而不为之呢!在这里我仅以获取特定用户信息为例:打开examples-src-timeline-GetUserTimeline.java,把代码复制到eclipse中。在此之前不要忘了在eclipse的根目录下建立一个twitter.properties文件,具体的内容参考前面的内容!因为程序中的twitterFactory()要读取此properties文件中的Access Token。 在GetUserTimeline这个类里,修改下代码如下: statuses = twitter.getUserTimeline("katyperry",new Paging(1));其中getUserTimeline这个方法可以接受两个参数,第一个为所要获取信息的用户名-我想获取凯蒂佩里的信息!第二个为页数。运行该程序结果如下:

这就是在eclipse的控制台中得到的凯蒂佩里twitter中第二页的信息。好了~我们已经实现了掌握指定用户信息的方法,还有很多的功能比如程序更新状态、获取流信息等这里就不在讲述了,有兴趣的同学们可以自己去查看文档和实例代码来实现。

twitter接口开发的更多相关文章

  1. 《连载 | 物联网框架ServerSuperIO教程》- 13.自定义视图显示接口开发,满足不同的显示需求

    1.C#跨平台物联网通讯框架ServerSuperIO(SSIO)介绍 <连载 | 物联网框架ServerSuperIO教程>1.4种通讯模式机制. <连载 | 物联网框架Serve ...

  2. 《Python Web 接口开发与测试》---即将出版

    为什么要出这样一本书? 首先,今年我有不少工作是跟接口自动化相关的,工作中的接口自动化颇有成效. 我一直是一个没有测试大格局的人,在各种移动测试技术爆发的这一年,我却默默耕耘着自己的一亩三分地儿(We ...

  3. 浅谈 PHP 与手机 APP 开发(API 接口开发) -- 转载

    转载自:http://www.thinkphp.cn/topic/5023.html 这个帖子写给不太了解PHP与API开发的人 一.先简单回答两个问题: 1.PHP 可以开发客户端? 答:不可以,因 ...

  4. 支付宝WAP支付接口开发(Node/Coffee语言)

    此博客不更新很久了, 更新的文档在这, 有兴趣到这里围观: http://neutra.github.io/2013/%E6%94%AF%E4%BB%98%E5%AE%9DWAP%E6%94%AF%E ...

  5. C#微信公众号接口开发,灵活利用网页授权、带参数二维码、模板消息,提升用户体验之完成用户绑定个人微信及验证码获取

    一.前言 当下微信公众号几乎已经是每个公司必备的,但是大部分微信公众账号用户体验都欠佳,特别是涉及到用户绑定等,需要用户进行复杂的操作才可以和网站绑定,或者很多公司直接不绑定,而是每次都让用户填写账号 ...

  6. C#.NET微信公众账号接口开发系列文章整理--微信接口开发目录,方便需要的博友查询

    前言: 涉及微信接口开发比较早也做的挺多的,有时间的时候整理了开发过程中一些思路案例,供刚学习微信开发的朋友参考.其实微信接口开发还是比较简单的,但是由于调试比较麻烦,加上微信偶尔也会给开发者挖坑,并 ...

  7. C#/ASP.NET MVC微信公众号接口开发之从零开发(四) 微信自定义菜单(附源码)

    C#/ASP.NET MVC微信接口开发文章目录: 1.C#/ASP.NET MVC微信公众号接口开发之从零开发(一) 接入微信公众平台 2.C#/ASP.NET MVC微信公众号接口开发之从零开发( ...

  8. 推荐15款最好的 Twitter Bootstrap 开发工具

    Twitter Bootstrap 自从2011年最初发布到网上后,迅速成为 Web 领域最流行的响应式前端开发框架之一,是网页设计的优秀实践.Twitter Bootstrap 框架包含了众多的预定 ...

  9. APP数据接口开发的一些经验

    刚接到这样的任务时,没有感觉到任何压力,不就是给移动端应用提供数据吗?那边发来参数,这边处理数据,返回JSON.做网站开发时经常使用ajax请求后台数据,不就是这么回事吗.于是,在确认完需求后就开始干 ...

随机推荐

  1. 【hadoop之翊】——基于CentOS的hadoop2.4.0伪分布安装配置

    今天总算是把hadoop2.4的整个开发环境弄好了,包括 windows7上eclipse连接hadoop,eclipse的配置和測试弄得烦躁的一逗比了~ 先上一张成功的图片,hadoop的伪分布式安 ...

  2. C++笔试面试总结

    手游广州某公司书面今天接受采访时.刚进去中午1中场休息.他们公司谁刚刚醒来,一个冷漠打牌,然后去上班.瞬间,这些公司有没有什么好印象,压抑. 接着快2点的时候.发了一份笔试题.大部分题目均在网上的&l ...

  3. 英特尔® 硬件加速执行管理器安装指南 — Microsoft Windows*

    介绍 本文将指导您安装英特尔® 硬件加速执行管理器(英特尔® HAXM),这是一款可以使用英特尔® 虚拟化技术(VT)加快 Android* 开发速度的硬件辅助虚拟化引擎(管理程序). 前提条件 英特 ...

  4. poj 3225 间隙(横截面和填充操作)

    http://poj.org/problem?id=3225 一道题又做了一天. .这道题对我来说起初有N多难点. 1:区间的开闭怎样解决. . 2:如何把区间的交并补.对称差转化为对线段树的操作. ...

  5. synchronized与static synchronized 差异

    1.synchronized与static synchronized 差异       synchronized是对类的当前实例进行加锁,防止其它线程同一时候訪问该类的该实例的全部synchroniz ...

  6. PHP PDO sqlite ,Unable to Open database file的解决方法

    t.php在网站的根目录. fdy.db在inc文件夹下; t.php中sqlite路径写成相对路径 $db = new PDO('sqlite:inc/fdy.db'); 开始提示 Fatal er ...

  7. cassandra 服务启动流程

    cassandra 服务启动流程 1.  setup 1)   CassandraDaemon ->main publicstaticvoidmain(String[]args) { insta ...

  8. iOS_67控件外观对照

    iOS 7 button无边框,操作栏透明,控制器全屏 Tab Bar 对照 iOS 7                                                         ...

  9. c++日历v1.12版

    ////////////////////////////新增信息修改功能,未完善. #include<iostream> #include <string> #include& ...

  10. RPG游戏学习——1.任务脚本系统

    [前言] 近期准备做个rpg小游戏,所以開始研究rpg的一些系统.rpg最核心的应该是任务脚本系统(其它脚本系统类似),在參考了非常多网上的资料后,简要总结例如以下. [脚本的触发运行] 一个脚本须要 ...