【问题标题】:twitter stream api with rails带有 Rails 的 Twitter 流 api
【发布时间】:2013-10-14 00:21:17
【问题描述】:

我正在开发使用 twitter 流 api 的实时数据可视化项目 s'.用于在基于 Rails 框架的服务器端处理推文。

使用 twitter ruby​​ gem,我可以获取流推文

topics = ["coffee", "tea"]
client.filter(:track => topics.join(",")) do |tweet|
  puts tweet.text
end

有了这个,我需要在 Rails 中构建一个 JSON API。

更新:使用 JSON API,需要与 AngularJS 集成。对于实时构建 API,我是否需要将其存储在任何数据库中。

【问题讨论】:

    标签: ruby-on-rails ruby twitter


    【解决方案1】:

    我建议您考虑使用Sinatra 来构建 API,但您当然可以在 Rails 中完成。只需当客户端对routes.rb 中定义的端点进行 REST 调用时,控制器方法本身就会对 Twitter 进行 REST 调用,然后将其结果转换并序列化为 JSON 以返回给您的客户端。

    请记住,您的客户需要将 CSRF 令牌与他们的请求一起发送到您的服务,以便 Rails 让他们通过并保持会话。

    在 JQuery 中它可能看起来像这样:

    $.ajaxSetup({
      beforeSend: function(xhr) {
        xhr.setRequestHeader('X-CSRF-Token', $('meta[name="csrf-token"]').attr('content'));
      }
    });
    

    至于与数据量有关的内存问题,这取决于您要检索的数据量、您正在使用它做什么、您的机器的功率等。如果您没有达到目标,我不会担心消防水带。如果它发生,让我们稍后担心内存问题。在不使用数据库的情况下,您总是可以做一些事情,例如缓存结果等。

    【讨论】:

      猜你喜欢
      • 2011-09-06
      • 2015-03-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-04-03
      • 2012-09-17
      • 2012-02-04
      • 1970-01-01
      相关资源
      最近更新 更多