web-dev-qa-db-ja.com

RESTful Webアプリケーションとはどういう意味ですか?

重複の可能性:
REST(簡単な英語)とは何ですか?

RESTful Webアプリケーションとはどういう意味ですか?

Webサービスは、Web(Http)を介して他のプログラムからアクセスできる機能です。少し明確にするために、PHPでHTMLを出力するWebサイトを作成する場合、そのターゲットはブラウザーであり、ひいてはブラウザーでページを読み取る人間です。Webサービスは人間を対象としていません。むしろ他のプログラムで。

SOAPとRESTはWebServicesを作成する2つの方法です。間違っている場合は修正してください?

WebServiceを作成する他の方法は何ですか?

完全にRESTfulなWebアプリケーションとはどういう意味ですか?

9
John Cooper

StackOverflowの優れた回答を参照してください RESTfulプログラミングとは正確には何ですか?

主なポイントは次のとおりです。

  • RESTを理解するには、まずHTTPを理解する必要があります。 HTTPプロトコルは、動詞とリソースを中心としています。主流の使用法の2つの動詞はGETとPOSTですが、HTTP標準ではPUTやDELETEなどの他のいくつかの動詞を定義しています。これらの動詞はリソースに適用されます。

  • RESTfulアプリケーションでは、GETリクエストを使用してデータを変更することはありません。これがPUT、POSTおよびDELETEの目的です。ただし、ほとんどのWebアプリケーションはこれを常に実行しているため、RESTfulではありません。

  • また、HTTP応答によって返された、リソースに対して取得された実際の表現は、HTTP Acceptヘッダーに依存して、XML、HTTP、または要求されたリソースを表すJava Object 。

  • 上記のポイントは、より一般的なREST建築スタイルの から生まれた(HTTPを介した)特定の実装であるRESTful Webアプリケーションを扱っています。 Roy Fielding による論文。

3
dodgy_coder

はい、REST設計は最初はサービスを対象としています。しかし、Webアプリケーションはそのようなサービスをブラウザーアプリケーションに提供することに他なりません。したがって、RESTfulな方法でアプリケーションを設計すると、おそらくMVCフレームワーク内で、私のコントローラーはREST原則に従って編成されています。

例として、私はショッピングカートを持っています。このショッピングカートにアイテムを追加したり、編集または削除したりできます。したがって、RESTサービスを実装し、ブラウザからのリクエストを取得するCartItemという名前のコントローラがあります。「完全に」RESTfulなアプリケーションは、すべてのインタラクションがリソースとRESTfulリクエストとして編成されます。静的ページには、showアクションに反応するコントローラーがあります。

1