Twitter - AJAX Client
Gib einen Twitternamen ein und drücke auf Load.
Das ist ein funktionierendes Demo eines Javascript Clients für Twitter, aber das Script dahinter ist noch sehr rudimentär. So werden zum Beispiel Fehler nicht abgefangen.
Genaue Zahlen habe ich zwar nicht gefunden, aber gefühlt hat irgendwie so ziemlich jeder einen Account bei Twitter, dem beliebten Zeitvernichtungstool.
Da zu einem Account bei Twitter auch immer ein kleines Userbild gehört, kam mir die Idee, diese Bildchen als Alternative zu Gravatar für Kommentare zu benutzen.
Rechts siehst Du das erste Ergebnis dieser Idee: Twitter-Screenname eingeben und auf Load klicken und dann werden die zugehörigen Daten per AJAX vom Twitter Server geladen.
Wie Du weiter unten sehen kannst, ist das Markup und das Script selber relativ simpel, das ist allerdings nur möglich, weil Twitter die Userdaten auch als JSON anbietet.
Die Doku zur API von Twitter zeigt, wie man auf die Daten zugreifen kann. Allerdings ist die Anzahl der Requests auf 70 pro Stunde limitiert.
JSON von Twitter holen
Die URL für Userdaten bei Twitter hat folgendes Schema:
Da ich das JSON per Javascript verarbeiten will und weil eine HTTP Authentication notwendig ist, brauche ich als erstes ein kleines PHP Script, dass das JSON File einließt und direkt wieder ausspuckt. Dadurch kommt das JSON von meinem Server und ich kann es per AJAX laden und mein Twitter Passwort bleibt geheim, da nur im PHP.
Sinnigerweise speichere ich das als twitter.php
Per AJAX laden
Das Javascript ist zwar einen Ticken komplizierter, als das PHP Script oben, aber es hält sich doch noch in engen Grenzen;) Natürlich braucht es erstmal Prototype und dann:
Das Script tut im Prinzip folgendes:
- Auf Klicks auf den “Load” Button lauern
- Bei einem Klick einen AJAX Request an
twitter.phpmit dem Inhalt des Eingabefeldes als GET Variabel twitter.phpholt von Twitter die JSON Datei und gibt die an das Javascript zurück- Das JSON wird ein bißchen umgebaut
- Das Bild, der Name, die Homepage, die Location und der letze Tweet werden ins HTML geschrieben.
- Fertig
Ich gehe mal nicht darauf ein, wie das Markup aufgebaut ist. Nur in Kurzfassung: Ein Formularfeld zur Eingabe des Screenname und ein paar divs zur Ausgabe. Die div haben in diesem Beispiel jeweils eine ID beginnend mit twitter_ gefolgt von dem JSON Key, dessen Wert rein soll (z.b.: In twitter_location wird die Location geschrieben).
sdasdasdasdasdasdasdasd