用Twitter自己的话来说:
 

REST API

The REST API provides simple interfaces for most Twitter functionality.

the Streaming APIs

The Streaming API is a family of powerful real-time APIs for Tweets and other social events.

显而易见,REST API看上去没Streaming API这么高级。这也是有历史原因的。之前Twitter没有自己的搜索功能,大家用着都挺不方便。而一家叫做Summarize. Inc的,只有五名工程师的小公司,正好做了这个功能满足客户需求。Twitter对其十分很欣赏,用Twitter创始人之一Biz Stone的话来说,就是“We had already fallen in love with both"。于是,2008年7月,Twitter对Summarize进行了收购,并把该功能重新包装为“Twitter Search”。这家公司开发的API,就是REST API。

但除此之外,Twitter作为自主研发的一套系统,不能没有自己的家伙,2010年7月,Twitter的亲儿子,Streaming API诞生。亲儿子嘛,高级一些也是很合理的。

Twitter承诺将整合二者,但目前看来这项工作还在漫漫无期的进行当中,REST API甚至还推出了1.1的新版本。

 

REST API

可用于查询,修改某用户账户。查询无需用户权限,修改需要用户权限。权限由OAuth提供。

非实时,对数据量等方面有较严格的限制。

传统的Web信息交流模式,发送Request, 返回数据。

返回大约最近一周的数据。

Streaming API

根据搜索条件,用户名,实时返回tweets和用户信息,无需用户权限。但必须通过basic或OAuth登录你自己的Twitter账号才能使用Streaming。

实时,限制较为宽松。

需与Twitter Server建立长期Connection(几个月甚至数年!只要你还需要Twitter数据!),得用一个长期的系统进程去维护它!

只返回Connection建立之后的数据,不返回历史。

还有很多不同,详情参见

http://140dev.com/twitter-api-programming-tutorials/aggregating-tweets-search-api-vs-streaming-api/

参考:

http://stackoverflow.com/questions/5400760/twitter-api-rest-and-streaming-whats-the-difference
https://dev.twitter.com/docs
https://dev.twitter.com/docs/history-rest-search-api
http://tech.qq.com/a/20100321/000033_2.htm
http://www.techweb.com.cn/news/2010-07-29/650599.shtml
https://blog.twitter.com/2008/finding-perfect-match
http://140dev.com/twitter-api-programming-tutorials/aggregating-tweets-search-api-vs-streaming-api/

Twitter REST API, Streaming API的更多相关文章

  1. 【337】Text Mining Using Twitter Streaming API and Python

    Reference: An Introduction to Text Mining using Twitter Streaming API and Python Reference: How to R ...

  2. salesforce零基础学习(八十五)streaming api 简单使用(接近实时获取你需要跟踪的数据的更新消息状态)

    Streaming API参考链接: https://trailhead.salesforce.com/en/modules/api_basics/units/api_basics_streaming ...

  3. 基于Woodstox的StAX 2 (Streaming API for XML)解析XML

    StAX (Streaming API for XML)面向流的拉式解析XML,速度快.占用资源少,非常合适处理大数据量的xml文件. 详细教程和说明可以参见以下几篇文章: 使用 StAX 解析 XM ...

  4. Jackson Streaming API to read and write JSON

    Jackson supports read and write JSON via high-performance Jackson Streaming APIs, or incremental mod ...

  5. Spark(十) -- Spark Streaming API编程

    本文测试的Spark版本是1.3.1 Spark Streaming编程模型: 第一步: 需要一个StreamingContext对象,该对象是Spark Streaming操作的入口 ,而构建一个S ...

  6. 重构Web Api程序(Api Controller和Entity)续篇

    昨天有写总结<重构Web Api程序(Api Controller和Entity)>http://www.cnblogs.com/insus/p/4350111.html,把一些数据交换的 ...

  7. ecshop /api/client/api.php、/api/client/includes/lib_api.php SQL Injection Vul

    catalog . 漏洞描述 . 漏洞触发条件 . 漏洞影响范围 . 漏洞代码分析 . 防御方法 . 攻防思考 1. 漏洞描述 ECShop存在一个盲注漏洞,问题存在于/api/client/api. ...

  8. httpclient 认证方式访问http api/resutful api并获取json结果

    最近,因公司线上环境rabbitmq经常发生堆积严重的现象,于是跟运维组讨论,帮助开发个集中监控所有rabbitmq服务器运行情况的应用,需要通过java访问rabbitmq暴露的http api并接 ...

  9. web api写api接口时返回

    web api写api接口时默认返回的是把你的对象序列化后以XML形式返回,那么怎样才能让其返回为json呢,下面就介绍两种方法: 方法一:(改配置法) 找到Global.asax文件,在Applic ...

随机推荐

  1. Apache+Tomcat+Memcached实现会话保持

    会话保持的三种方式 Session sticky会话绑定:通过在前端调度器的配置中实现统一session发送至同一后发端服务器 Session cluster会话集群:通过配置Tomcat保持所有To ...

  2. 导航,头部,CSS基础

    1.制作自己的导航条. 2.HTML头部元素: <base>  定义了页面链接标签的默认链接地址 <style>  定义了HTML文档的样式文件 <link>  定 ...

  3. 【Hive学习之五】Hive 参数&动态分区&分桶

    环境 虚拟机:VMware 10 Linux版本:CentOS-6.5-x86_64 客户端:Xshell4 FTP:Xftp4 jdk8 hadoop-3.1.1 apache-hive-3.1.1 ...

  4. Java -cp 命令查看 zookeeper 日志

  5. freedom is a kind of responsibility

    张维迎教授在2017年7月1日北大国发院2017届毕业典礼上的发言<自由是一种责任> 张维迎:自由是一种责任    本文为张维迎教授在2017年7月1日北大国发院2017届毕业典礼上的发言 ...

  6. rabbitMq 教程

    https://github.com/401Studio/WeekLearn/issues/2 目录 RabbitMQ 概念 exchange交换机机制 什么是交换机 binding? Direct ...

  7. AtCoder Beginner Contest 069 ABCD题

    题目链接:http://abc069.contest.atcoder.jp/assignments A - K-City Time limit : 2sec / Memory limit : 256M ...

  8. Python基础教程之udp和tcp协议介绍

    Python基础教程之udp和tcp协议介绍 UDP介绍 UDP --- 用户数据报协议,是一个无连接的简单的面向数据报的运输层协议.UDP不提供可靠性,它只是把应用程序传给IP层的数据报发送出去,但 ...

  9. Python进阶【第五篇】函数式编程及某些特殊函数

    一.函数式编程——Functional Programming 函数式=编程语言定义的函数+数学意义的函数 在计算机的层次上,CPU执行的是加减乘除的指令代码,以及各种条件判断和跳转指令,所以,汇编语 ...

  10. Oracle初级第一天

    oracle卸载 运行regedit,删除HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\ ...