日向夏特殊応援部隊

俺様向けメモ

第3回 RESTful Webサービス読書会の感想など

みんな REST 好きなんですねぇと言うのが良く分かった第3回の読書会。僕の方は前日夜からプレゼンを書き出して、自分が発表する10分前にやっと完成したと言う体たらくぶり><

8.8節に関して

キュー、一括処理、トランザクションなどの考え方の例が示されている8章でも最も突っ込みどころの多い所。リソースの適用する考え方としては十分楽しいけど、だいぶ無理してるのでこれはベストプラクティスと呼ぶには筆者の信念に偏り過ぎてると思った。

また一括処理の指定の際に例えば、/resource1, /resource2/subres1 みたいな二つのリソースに対して統一インターフェースで何かする場合、/sets/resouce1;resouce2/subres1 のように指定するんだけど、これってURI Template を使えば、その記述の仕方で対象となるリソースを指定する事が出来るから SQL で言う所の where 句のような使い方が出来なくは無いよねと。

URI Template各言語実装は、同僚の id:n_shuyo さんがまとめて下さってます。GJすぐる。

Assertion の為の PUT の件

すでに id:IwamotoTakashi さんが指摘してます。
これってあの石橋叩いてリクエストって奴かな。Expect ヘッダ付きでエンティティボディが空の PUT をすると、サーバー側はそれが来ると言う前提で待つみたいな。

迷ったら〜

のフレーズ忘れてた。迷ったらリソースは理想論。もちろん追いかけてもいいし、追わなくてもいい。
リソースで考えてみて、ないなーと思ったらオーバーロードPOSTで。つまり「迷ったらオーバーロードPOST」がベストプラクティスなんジャマイカ
それを言ったら台無しな気がしないでも無いけど、REST の良さはシンプルさであって、統一メソッドに収まらない概念がある事に対して、

  • それをリソースと扱うのか
  • あるいは既存のリソースへのROAに収まらないインターフェースと見るか

のいずれかのアプローチになるかと思えば、そういう結論に自ずとなるのかなと。

と言う訳で

REST にちょっと興味あるーって人は次回から来るといいと思います。今後は Google Group にて議論もやってくようです。