AbyssLukeのガイドライン(更新停止)

はてダから移転。このブログは更新されません。

Twitterアイコンゲートウェイなる物制作中

http://twal.info/icon/
Twitterアイコンゲートウェイなるものを作っていたり。
他でやっているところもあると思うけど。
永遠のベータ版。URLが変わったりいきなり終了する可能性あり。

使い方

http://twal.info/icon/に続いてTwitterのIDを入れるとオリジナルのアイコン画像が出力される。
TwitterのIDに続けて?thumb=48を付けると横48ピクセルに*1リサンプルされたアイコン画像が出力される。
同時にキャッシュもされる。今の所6時間おきの確認。

既知の不具合や修正したい所

  • 透過している画像の場合、thumb=48だと透過箇所が黒くなる。
  • 若干表示が遅い。
    • レンタルサーバーで動かしているので、負荷とかネットワーク環境とか影響するかも。
    • Last-Modifiedに対応させて若干サーバーにやさしくした方がいいかな。
  • アイコンの保存処理にはflockを掛けているが、表示の処理にはロックを掛けていない。
    • 同時にアクセスされると6時間に複数回取得の可能性。
  • 縦横のサイズが同じで無い画像で縦横サイズを統一させたい(特にthumb=48)。

裏技

  • idパラメータにTwitterIDを渡してもOK。ちなみにURLの指定より、idパラメータの方が優先される。
  • ?force=cacheでTwitterサーバーへ一切通信せずに、保存されているアイコンを表示させることができる。
  • ?force=checkで強制的にアイコン変更がないかチェックさせる。
    • 6時間おきにチェックしているが多用しないこと。
    • もちろんthumb=48も有効
  • http://twal.info/icon/~1/(ID).imageで保存されているオリジナルアイコン画像、http://twal.info/icon/~2/(ID).imageで横48ピクセルのアイコンが表示できる。
    • 静的なのでサーバーにあまり負荷が掛からないのが特徴。
    • ファイルが存在しない場合は本来の表示URLにリダイレクトして取得を試みる。
    • 拡張子が.imageなのは処理上の都合。mime-typeがtext/plainとして送られるので非推奨。

*1:縦横のサイズが同じで無い場合もあるので強調して言いました。