すがブロ

sugamasaoのhatenablogだよ

HTTPリクエスト君(ベータ)を作った

追記(2010/01/18)

下記で作成したツールをHTTPリクエスト君あらため、投げる君をリリースしました! - @sugamasao.blog.title # => ”コードで世界を変えたい”で正式版としてリリースしています。
もしDLして使ってみたい場合は、上記のエントリからご確認ください。ちなみに、Air1.5で作成してあります。

ADOBE AIR 2.0 の習作アプリ

AIR をちょっと触ってみたいと思い立って、つくってみました(しかも2.0beta)。

HTTPリクエスト君って?

サーバサイドプログラムを作る時に、データをサーバへ投げたいのだけど、クライアント側がちゃんとできてなくてテストしにくい・・・とか、POSTだと手作りするのちょっと面倒><とかありますよね。
そんな場合に、こいつで適当にリクエストパラメータをくっつけて POST してしまえば良いのでは、という発想の元に作成しました。

置き場所

以下になります。配布用パッケージの作り方がびっくりするぐらい適当で、インストールする際に色々と脅されますが、特にファイルシステムには触らないので安心してください(今度、そこら辺はちゃんと作り直します。。。)
http://sugamasao.dip.jp/etude/misc/HTTPRequestKun_beta.air

使い方

一番上のrequest URL にアクセスしたい URL*1を入力して、GET か POST かを選択し、その選択したボタンを押すとリクエストを発行します。

リクエストデータ作成画面

rqeuest タブで、必要であればパラメータを追加していきます。

レスポンス確認画面

response タブで、リクエスト結果の生テキストデータ等が確認できます。
その他に、リクエストを発行してからの処理時間も出力していますので、何かのご参考になれば。

作ってみた感想

ふつーに Flex でやるのとまったく変わりませんでした。・・・ファイルシステムとか触ってないので、余計そうだったのかもしれませんけれど。
ただ、まともに HTTPService を使ってみて思ったのですが、Response 時に content-type が取れない(というか、Header 全般が取れない)というのは一体どういうことなんだ。
ResultEventのドキュメントの説明書きのアバウトさ加減に現れている通り、実際に試しても値が何も無い(null)な状態で、さっぱり取れない。

headers : Object
特定の状況では、詳細なコンテキストを提供する結果と共にヘッダーが返される場合もあります。

http://livedocs.adobe.com/flex/3_jp/langref/mx/rpc/events/ResultEvent.html

なんたるゆとりフレームワークなんだ・・・。低レイヤーなクラスとかを使わないと content-type も取れないのだろーか。

というわけで

興味のある方は使ってみて下しあ!><

*1:host名じゃないので、http://hoge/method のような形で良いです