HTTPメソッドの対称性ちょっと迷ってるので考えを整理するためにメモ。状況:JavaのオブジェクトをバイナリシリアライゼーションしてPOSTする。問題:サーバは何を返送するのがきれいか。HTTPのメソッドはGETとPOSTがある(DELETEとかもあるし、HEADもあるが、この場合関係ないので無視)。GETは、ファイル転送要求なので、パスに対して(それがなんであれ)ファイルが返送される。それはそういうものだとして。投稿と考えれば投稿結果が返ることになる。実体はフォームに対してHTMLが返るとしても、意味的には投稿した文章が反映された文章が返るという処理だろう。今やPOSTは投稿とは限らない。実装を考えると型を無視するのもなんか気持ちよくない。data);と同じTとしたい。newOpinion);というのはきれいだが、ここではObjectを送りたいのである。それはそれとして、POSTはやっぱり投稿だと考えることもできる。その場合、オブジェクトを投稿したら、結果を反映したHTMLが返るのが良いかな。トマトをぶつけたらトマトが返ってくるのではなく説教が返ってくるということだ。フォームは文字列で、それに対して文字列が返るという、基本型での型の対称性を考えてしまうと、オブジェクトを送ったらオブジェクトが返るほうがきれいな気もする。そのオブジェクトをデシリアライズしたら文字列になるのだとしたらなんかばかばかしい。アドホックにやるなら、なんでもできるんだからオブジェクトを返すのが良さそうなのだが。16:39)引数と返り値が同じというのと、対称性ってのは、違う気が。21:59)そうですねぇ。<br>なんとなく壁にボールを投げたらはねかえってくるようなものを思い浮かべちゃったからだなぁ。22:15)イメージとしてはリクエストの反射としてのレスポンスなんだけど(というかフィルターのようにサーバーを見ている時点で妙なんだが)そのあたりでいろいろ考えているうちに引っ張って来たんだろうなぁ。<br>でもまあ、型の対称性があるメソッド(やっぱりフィルターか)――ということで。いうかタイトルがHTTPのとなってるな。投稿と考えれば投稿結果が返ることになる。(略)意味的には投稿した文章が反映された文章が返るという処理だろう。<br><br>RFC的にはそんなことないと理解してます。でかいもん投げ易いというだけ。22:24)いや、だったらPOSTなんてメソッド名を付けるとはちと考えにくい(だってGETときたらPUTとなるのが普通だと思うんだけど。英語で考えられるわけじゃないから、POSTが普通でしょと言われるとそうかなぁ、とも思うけど)<br>RFCに書かれているのは含意じゃなくて動作の規定だから「そんなことない」は正しいと思うけど。バイナリー送ろうとしているわけだし(というか既に送りまくってるし)。22:25)ちなみにRMIというよりは単にエンベロープとしてJavaのクラスを使うってだけの話です。