PHPのRestfulチュートリアルをたくさん読みました。
(RoRを使用しない理由については詳しく説明したくありません。これは、チームがPHPに精通しているためです)
APIを使用するように将来拡張することを計画しているので、RestfulWebサービスを実装することが重要であると読みました。
私は次のようなチュートリアルを見てきました
http://www.gen-x-design.com/archives/create-a-rest-api-with-php/
どうやら安らかなはWebサービスのためのものです。
ウェブページはどうですか?それらもRESTFULにすることができますか?
答えが「いいえ」の場合は、この線を超えないで、教えてください。ありがとうございました。
URLをRESTFULURLのように見せることは、単にmod_rewriteを使用することです。ただし、確かに、RESTfulアーキテクチャは、URLの見栄えを良くするだけではありません。
たとえば、list.phpというWebページにアイテムのリストがあります。各アイテムの横には削除リンクがあります。例:list.php?id = 1&deleteitem
誰かがlist.php?id = 1&deleteitemリンクをクリックすると、もちろん同じlist.phpファイルに戻って、$_GETのparamdeleteitemを確認します。
検出された場合、$_GETのパラメータIDに基づいてデータベースから削除します。
その後、パラメータなしでlist.phpにリダイレクトします。
このフロー全体をRESTFULにするにはどうすればよいですか?
RESTでは、何かを削除するには、HTTPリクエストメソッド(DELETE)を使用する必要があるためです。
明らかに私のリンクでは、それらはすべて単に単純です<a href="list.php?id=1&deleteitem">Delete</a>
教えてください。
私のプログラミングはそれほど強力ではないので、与えられたアドバイスが可能な限り素人であることができればそれは良いことです。
ありがとうございました。
編集
フォローアップの質問が2つあります。
質問1)これはページング付きのアイテムのリストですが、RESTfulにしたい場合、URLはどのようになりますか?
質問2)リスト内のすべての項目の横にDELETEリンクを配置しているので、今は理解しています。
<form method="POST">
<input type=hidden name="_method" value="delete">
<input type="submit" >
</form>
代わりは。
ただし、フォームはどこに投稿する必要がありますか?アイテムのURL?/ items / {item-id}
しかし、データベースの行を正常に削除した後、成功メッセージを表示するこのリストページに戻りたいと思います。
また、このリストページを成功メッセージで更新するときにポップアップメッセージを表示しないようにします。
このlist.phpURLに投稿し直すと、RESTfulではありませんか?以下の回答から、各アイテムは独自のURLを必要とするリソースであると言われているためです。
教えてください。ありがとうございました。