ITは遊び

毎日パソコンのことばかり考えてる

javascriptだけで動作するtwitterクライアントを作ってみた(ただし表示だけ)

Web上で気軽に使える本家より自分の好きなCSS適応してスタイリッシュにできるtwitterクライアントを作ろうと思った。javascript単独ではブラウザのクロスサイトスクリプティング対策のためAPIを叩く事はできない。PHPからAPI叩いてJavaScriptに渡す方法しかないかな、でもそれだとPHP側にパスワードをよこさないといけないから、それを管理するのが嫌だった。で、なんとかJavascriptでもデータの取得のみを可能にするJSONPという方法(HTMLヘッダのJavascript呼び出しでデータを渡してしまう。もちろん同期とかは不可だし、API側が対応していなければならない)があるのを知って、APIの仕様をみたところ対応していたので、タイムラインの取得に成功した。

ということで、一応呼び出しはPHPだが、PHPがやっていることは、

の、74thなっているところをGETから取得して書き換えているだけ。Javascriptソース、CSS、HTMLをすべてローカルに落としてくれば動作します。

で、以下がPHPのURL。○○の部分を自分のtwitterのユーザ名に書き換えて下さい。なお、アクセスすると、BASIC認証が求められますが、これはtwitter.comに対するBASIC認証なので、パスワードが僕の方に伝わることはないです。

http://74street.ddo.jp/tool/twitter/twitter74.php?id=○○

これで読み込みはできて、あと発言をどうするか。どうせウェブ上でChrome用デスクトップアクセサリとして使う予定だから、細かい事はできなくても良いのだが。やっぱり発言だけはできないと。

Javascript+CSSで作ってフルでAPI使うならAdobe AIRを使うしかないかなと思っていたが、JSONPとはうまくやるものだ。

残りノルマ(機能的にはこれしか付けないつもり)

  • 発言!!(インラインフレームで誤魔化すか)
  • RT、返信(発言に成功すれば簡単)
  • 「@74th」なんかをリンク化
  • 「URL」をリンク化