Edited at

Twitter API を使ってファボ画像を一覧できるサービスを作りました

More than 3 years have passed since last update.


サービスの概要

Twitterでファボしたツイート(今はいいね!)に画像がついてることありますよね?

私の場合、ファボはだいたい画像付きツイートにするんですが、Twitterの公式アプリだと、後で見ようと思ったとき、ひとつひとつツイートをクリックしないと画像の全体図が見れなくて使いづらいんですよね。

てことでパッと画像が閲覧できるサービスをExpress上に構築しOpenShiftで公開してみました。


サービスのURL

QooQ Twitter Favo Photos Viewer

https://app-qooq.rhcloud.com/app-twitter/favolist


必要になったもの


  • OpenShiftのアカウント

  • Twitterの開発者アカウント


OpenShiftについて

RedHatが提供するPasSです。フリーでも3つまでアプリを作成できます。現状ではHerokuのように6時間スリープなどの制限もなく、移行先として注目されているようです。


一連の流れ

今回はOpenShift上でもTwitterAPIつかえたよをメインにお送りしますので、TwitterAPI周りはさらっと流します。というか全体的に流しで説明しますので、ここで詰まりましたとかありましたら、コメントください。時間があったら補足します。


  1. OpenShiftにアカウントを登録します。https://www.openshift.com/

  2. OpenShiftにデプロイ環境を構築します。今回はカートリッジにnodejsを選択してデプロイ先を構築します。カートリッジは環境のテンプレートのようなものです。これでデプロイ環境とそのURLが取得できます。

  3. 取得したURLをTwitterのAPI使用をするURLとして登録します。https://apps.twitter.com/ 開発者登録に電場番号がいりますが、登録しても最初にSMSで認証番号が送られてるくるぐらいなので臆せずいきましょう。

  4. 開発環境でOpenShiftに作成されている雛形となるリポジトリをクローンします。開発環境はCloud9で問題ないです。SSHの公開鍵をOpenShiftに登録してgit cloneしてください。

  5. TwitterAPIを使うのでシークレットトークンなどをOpenShiftに登録する必要がでるでしょう。(直書きしないのであれば)。gem install rhcでOpenShiftのコントロールCLIを入手したら、 rhc set-env name=val -a app-name で環境変数を登録できますのでこれを使いましょう。

  6. express起動時のIP,Portをprocess.env.OPENSHIFT_NODEJS_IP, process.env.OPENSHIFT_NODEJS_PORTにする必要があります。

  7. アプリが完成したらデプロイです。git push originでデプロイ環境に送り込みましょう。起動に成功したらsuccessメッセージがでます。

以上がかなり大雑把ですが全体の流れになります。OpenShift環境はかなり制限がきついので場合によってはできないこともでてくると思います。

実際、ほんとはphoenixを使いたかったんですがmixでこけるので諦めました。

でもカートリッジが存在する環境なら大体つかえると思います。たぶん。

では雑ですがこれくらいで。

気になる点があればコメントください。