Ich konnte einen Benutzer mit Twitter über OmniAuth anmelden (ich folgte Railscast # 235-6 und machte eine einfache Anwendung). Jetzt versuche ich den Twitter-Feed des angemeldeten Benutzers anzuzeigen. Kann mir jemand sagen, wie das gemacht wird? Wie initialisiere ich Twitter? Wie gebe ich den Benutzernamen und das Passwort des angemeldeten Benutzers ein? Ich bin neu bei Rails, daher wäre es hilfreich, wenn ich genau wüsste, wo ich den Code ablegen soll. DankeEinen Twitter-Feed von einer Rails-App anzeigen
Antwort
Zuerst benötigen Sie keine Benutzeranmeldeinformationen, um einen Twitter-Feed zu erhalten, wenn es öffentlich ist. Schauen Sie sich die Twitter gem. Sobald Sie den Edelstein installiert haben, ist alles, was Sie tun müssen:
require 'twitter'
Twitter.user_timeline("icambron")
Versuchen Sie es in IRB, um loszulegen. Ziemlich einfach, oder?
Jetzt möchten Sie wahrscheinlich Ihren API-Schlüssel verwenden, da Twitter anonyme Anfragen einschränkt und dies von einem gemeinsam genutzten Server problematisch sein kann. Tun Sie das in einem initializer:
Twitter.configure do |config|
config.consumer_key = YOUR_CONSUMER_KEY
config.consumer_secret = YOUR_CONSUMER_SECRET
config.oauth_token = YOUR_OAUTH_TOKEN
config.oauth_token_secret = YOUR_OAUTH_TOKEN_SECRET
end
die tatsächlichen Werte von Ihrer Twitter-Entwickler-Seite.
Schließlich, um wirklich schick zu werden, wenn Sie erweitern möchten, können Sie die Anfrage im Auftrag des Benutzers mit den OAuth-Anmeldeinformationen, die Sie von OmniAuth erhalten haben (nicht ihren Benutzernamen und ihr Passwort; Sie haben nicht jene). Dadurch können Sie viel mehr Anfragen pro Sekunde durchführen, weil sie von verschiedenen Benutzern kommen. Initialisiere Twitter einfach mit den Feldern consumer_key
und consumer_secret
, die auf die Sachen eingestellt sind, die du vom OmniAuth-Hash erhalten hast (siehe here, schau unter "credentials", um zu sehen, wie man sie von OmniAuth erhält).
Danke. Ich muss jetzt noch nicht auf den Geschmack kommen, aber ich bleibe irgendwie hier hängen, weil ich immer noch nicht weiß, wie das Einbringen des Zeugs in den Initialisierer dazu führt, die Tweets des angemeldeten Benutzers zu holen. Könnten Sie mir bitte zeigen, wie Sie den Beispielcode verwenden, den Sie angegeben haben (Twitter.user_timeline ("logged_in_users_username")), um das zu tun? – katherine
Also, was meinst du mit "Just initialize Twitter ..."? – katherine
Ich verstehe Ihre erste Frage nicht - der Initialisierer konfiguriert nur das Twitter-Juwel, sodass Sie sich mit Twitter als Ihr Entwicklerkonto verbinden können. Die "user_timeline" -Ding ist, was Sie in Ihrem Code verwenden, um die Tweets des Benutzers zu erhalten. Sie kennen das Twitter-Handle des Benutzers (richtig?) Und Sie wissen, wie Sie Tweets für ein Handle bekommen, also fügen Sie sie zusammen und Sie erhalten die Tweets des eingeloggten Benutzers. –
Klasse Tweet
BASE_URL = "http://api.twitter.com/1.1/statuses/user_timeline.json"
SCREEN_NAME = "OMGFacts"
MAX_TWEETS = 10000
CONSUMER_KEY = "PMiAyrY5cASMnmbd1tg"
CONSUMER_SECRET = "0TYRYg0hrWBsr1YZrEJvS5txfA9O9aWhkEqcRaVtoA"
class << self
def base_url
BASE_URL
end
def screen_name
SCREEN_NAME
end
def url(count = MAX_TWEETS)
params = {:screen_name => screen_name, :count => count}
[base_url, params.to_param].join('?')
end
def prepare_access_token(oauth_token, oauth_token_secret)
consumer = OAuth::Consumer.new(CONSUMER_KEY, CONSUMER_SECRET,
{ :site => "http://api.twitter.com",
:scheme => :header,
})
# now create the access token object from passed values
token_hash = { :oauth_token => oauth_token,
:oauth_token_secret => oauth_token_secret,
:open_timeout => 500000000
}
access_token = OAuth::AccessToken.from_hash(consumer, token_hash)
return access_token
end
def get(count = MAX_TWEETS)
count = Preference.get(:2000).to_i
access_token = prepare_access_token("178394859-cJlRaiQvqVusPAPjqC2Nn7r3Uc7wWsGua7sGHzs","3T8LCZTYXzuPLGzmWX1yRnKs1JFpfJLKemoo59Piyl8")
response = JSON.parse access_token.request(:get, url).body
response[0...count]
end
end
end
- 1. Einen Bericht basierend auf einer Formularanwendung anzeigen
- 2. Einen Menüüberlaufknopf in einer Werkzeugleiste anzeigen
- 3. Anzeigen einer Liste von Sperren in Coldfusion
- 4. Anzeigen von HTML in einer Flex-Anwendung
- 5. Ein Bild von einer URL anzeigen
- 6. Anzeigen von Zahlen in einer While-Schleife
- 7. Möglichkeiten zum Anzeigen von Ereignissen einer Schleife
- 8. Anzeigen einer Toast-Benachrichtigung von einem Dienst
- 9. Anzeigen einer UIViewController-Ansicht
- 10. Anzeigen einer Modalansicht
- 11. Nur einen Wert in JComboBox anzeigen, wenn einer ausgewählt ist
- 12. Anzeigen nur von einer Kategorie (Funktionsänderung)
- 13. Anzeigen von Zeilen in einer Mehrfachauswahl
- 14. Anzeigen von hebräischem Text in einer Konsole
- 15. Anzeigen von Informationen aus einer Datenbankzelle
- 16. Anzeigen von Oracle-Abfragen auf einer Website
- 17. Aktuelle Bilder von einer Kamera anzeigen - AKTUALISIERT
- 18. einen Text nur in einer Sprache in Wordpress-Website anzeigen
- 19. Wie können Sie einen Feldnamen in einer MVC-Anwendung anzeigen?
- 20. 3 Posts in einer Schleife für einen Karussell-Schieberegler anzeigen
- 21. Anzeigen einer benutzerdefinierten Hierarchie
- 22. Anzeigen einer ASCII-Tabelle
- 23. Anzeigen von Daten von node.js Server auf einer HTML-Seite
- 24. Hexadezimalzahlen einer Datei anzeigen
- 25. Einen Farbverlauf in einem SAS-Graphen anzeigen
- 26. Verwenden von XML zum Anzeigen einer Tabelle auf einer Seite
- 27. Von einer "Alle anzeigen" zu einer Einzelansicht wechseln
- 28. Abrufen einer Bilddatei von parse.com und Anzeigen in einer Bildansicht
- 29. Einen gtk.Calendar in einem Menü anzeigen?
- 30. Anzeigen von CMake-Variablen
dies auch sein mag http://stackoverflow.com/questions/1665213/best-way-to-display-a-twitter-feed-with-history-on-a-rails -Seite hilft. – gayavat
@gayavat Ich habe diese Seite gesehen. Es zeigt keinen Code an. Was ich brauche, ist genau zu wissen, was ich eingeben muss, um Informationen vom Twitter des angemeldeten Benutzers abzurufen. – katherine
Letzter Kommentar verweist auf http://www.arctickiwi.com/blog/download-you-twitter-feed-using-ruby-on-rails-with-oauth wo Code Beispiel vorhanden ist – gayavat