ほとんどのRESTチュートリアルは、リソースを次のように配置しました。
GET /car/ -> list of cars
GET /car/<id>/ -> info about specific car
POST /car/ -> create a new car
ただし、ブラウザで使用するWebアプリケーションを構築する場合、めったに説明されないリンクが欠落しているため、/ car /にPOSTする前に、新しいリソース(車)を作成するためのフォームを取得する必要があります。このフォームのURLはどうあるべきですか?
私は通常使用しました:
GET /car/new/ -> form for creating a new car
POST /car/new/ -> redirect to /car/<id>/ if item is created else show form with invalid fields highlighted
しかし、 http://www.slideshare.net/Wombert/phpjp-urls-restによると、これは適切なRESTURLではありません。「new」はリソースではなく動詞として実際に使用されているため、RESTが適切でない理由はわかりますが、フォームはすでに車のリストに使用されているため、フォームにGET /car/
は使用できません。GET /car/
新車用。
要するに、私の質問は、「「リソースフォームの作成」のRESTful URLとは何ですか?」です。
少し関係がありますが、Webサービスであっても、事前にスキーマを知っているクライアントに依存することが常に賢明であるとは限らないため、Webサービスでも、クライアントがリソースの現在のリソースを要求する方法が必要になる場合があります。スキーマ。AFAICS、これは、作成フォームを取得する必要がある同様の状況です(つまり、フォームは、リソースを作成するためのPOSTクエリを作成する方法を説明するスキーマのようなものです)。ここでの私の考え方は正しいですか?