簡體   English   中英

如何從 Twitter Gem Twitter 對象返回推文的完整 JSON

[英]How to return full JSON of Tweet from Twitter Gem Twitter Object

所以我有一些代碼:

#twitter api access config up here
Twitter.status(27558893223)

我知道我從 Twitter.status 行中獲得了所有推文信息。 我想要的不是 Ruby 對象。 我想要那條推文的完整 JSON,所以我可以直接使用它來填充我的 mongodb 實例。 我可以獲得有關如何將該推文對象轉換為 JSON 的幫助嗎?

謝謝!

你不能使用JSON.generate的方法Tweet.attrs

這主要取決於您要在數據庫中填充的所有列。 這里的文檔提到了關於您可以從Twitter::Tweet獲取的所有元素的非常好的信息。

例如,您可以執行下面提到的操作並將其相應地存儲到您的數據庫實例中。

Twitter.status(27558893223).source
Twitter.status(27558893223).from_user
Twitter.status(27558893223).from_user_id 
Twitter.status(27558893223).lang

或者你可以做Twitter.status(27558893223).attrs並相應地處理 JSON。

如果我理解錯誤,請告訴我。

對於Twitter::Tweet類的一個對象,請使用.attrs

Twitter.status(27558893223).attrs

對於對象數組,使用.map(&:attrs)

Twitter.user_timeline("[某人的推特名稱]").map(&:attrs)

這是一個簡單的 Sinatra 應用程序,用於返回 Katy Perry 的推文 :)


require 'rubygems'
require 'sinatra'
require 'sinatra/jsonp'
require 'twitter'

class TwitterFetcher < Sinatra::Base helpers Sinatra::Jsonp

@@twitter_client = Twitter::REST::Client.new do |config| config.consumer_key = ENV['consumer_key'] config.consumer_secret = #ENV['consumer_secret'] # config.bearer_token = ENV['bearer_token'] config.access_token = # ENV['access_token'] config.access_token_secret = #ENV['access_token_secret'] end

get '/' do result = @@twitter_client.user_timeline("katyperry") jsonp result.map(&:attrs) end end

也許這在以前是不存在的。

只需調用.to_json øn 推文對象:

client = Twitter::REST::Client.new(config)
client.status(27558893223).to_json

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM