岩本隆史の日記帳(アーカイブ)

はてなダイアリーのサービス終了をうけて移行したものです。更新はしません。

RESTful?なバリデーションを考える

英語とRESTが同時に勉強できるので「http://tech.groups.yahoo.com/group/rest-discuss/」を読み始めた。

で、さっそく興味深いスレッドを見つけた。

ユーザ名、メールアドレス、パスワードなんかのバリデーションをどう設計するか?という問題。

たとえばユーザ名については、議論中、下記のような提案がなされている。

  • 「HEAD /users/{username}」へのリクエストで処理する
    • 許容できない文字列だったら「400 Bad Request」を返す
    • 既に使われているユーザ名だったら「200 OK」を返す
    • 使用可能だったら「404 Not Found」を返す

な、なるほど、そういう考え方もありますか…。

で、スレ主が「じゃあパスワードの場合は?」と切り返し、議論がストップした模様(!)。

私の意見はどうかというと、RESTful本の「5.5.3 アルゴリズムリソースに対するクエリ変数の使用」と同じように「GET /varidate?username=hogehoge」でバリデーション結果を返せば良いだけなんじゃないかと思うわけですが、いつ気が変わるか自信がありません。「男心と秋のパンまつり」って奴です。