頻繁に外部ファイルやAPIとやり取りするFlashを作る場合、ローカルでのテストには限界があります。テストサーバ等へアップロードして実際に動作させてみるのが確実なのですが、なかなか面倒。バグの正体がわからずに何度もパブリッシュ→アップ→確認・・・うわああぁぁ

そこで便利なのが、ブラウザでローカルのプロキシを噛ませてswfファイルを置換する方法です。ブラウザはサーバ上のswfをロードしているつもりだけど実際はローカルのswfが再生されます。それを実現する方法はいろいろあるようですが、今回はas以外ほとんどプログラムを書けない私でも使えたCocProxyをご紹介します。

CocProxyはrubyで動作する、シンプルなローカル置換プロキシ(という言い方でいいのでしょうか)です。使い方も簡単です。

  1. http://svn.coderepos.org/share/lang/ruby/cocproxy/proxy.rb をダウンロード
  2. proxy.rbをどこか適当なフォルダに置き、同じ階層にfilesフォルダを作る。
    私の場合、tools/cocproxy/proxy.rb、tools/cocproxy/files/ となっています。
  3. コマンドラインから ruby proxy.rb を実行する。

以上で、ローカルにプロキシが立ちます。ポート番号はport : 5432 のように起動時に表示されます。
次に、ブラウザの設定でプロキシを設定します。ブラウザごとに設定方法やアドオン等異なりますが、「localhostのポート5432」で設定すればOKです。

以上で、filesフォルダ内に置換したいswfファイルを置いておけばCocProxyがすり替えてくれます。filesに無いファイルは置換されないので、表示が崩れたりする事も(サイトによっては時々ありますが)ありません!
置換できるファイルはもちろん画像やcssもいけます。これで快適web開発!

HTML5飯