「RESTful」の版間の差分
Administrator (トーク | 投稿記録) 編集の要約なし |
Administrator (トーク | 投稿記録) 編集の要約なし |
||
| (同じ利用者による、間の1版が非表示) | |||
| 3行目: | 3行目: | ||
RESTfulなWebサービスは[[HTTPプロトコル]]を使用して[[データ]]を転送する[[API]]であり、[[Webアプリケーション]]の開発でよく使用されます。 | RESTfulなWebサービスは[[HTTPプロトコル]]を使用して[[データ]]を転送する[[API]]であり、[[Webアプリケーション]]の開発でよく使用されます。 | ||
== 原則 == | |||
RESTfulなWebサービスは、以下の原則に従って設計されます。 | RESTfulなWebサービスは、以下の原則に従って設計されます。 | ||
これらの原則に従って設計されたRESTfulなWebサービスは、柔軟性があり、拡張性が高く、シンプルで理解しやすいインターフェースを提供することができます。 | これらの原則に従って設計されたRESTfulなWebサービスは、柔軟性があり、拡張性が高く、シンプルで理解しやすいインターフェースを提供することができます。 | ||
| 19行目: | 20行目: | ||
リソース間の関連性は[[ハイパーリンク]]を使用して簡単にアクセスできるようにします。 | リソース間の関連性は[[ハイパーリンク]]を使用して簡単にアクセスできるようにします。 | ||
一般的な[[データベース]]では「リレーション」を表現するのに関連するレコードのユニークIDを保持することが多いですが、RESTでは一歩踏み込んで別リソースへの[[ハイパーリンク]]まで作り上げて[[データ]]を返してあげます。 | 一般的な[[データベース]]では「リレーション」を表現するのに関連するレコードのユニークIDを保持することが多いですが、RESTでは一歩踏み込んで別リソースへの[[ハイパーリンク]]まで作り上げて[[データ]]を返してあげます。 | ||
[[category: デザインパターン]] | |||
2025年3月5日 (水) 06:22時点における最新版
RESTfulとは、Webサービスの設計方法のひとつである「REpresentational State Transfer(REST)」に則り、作られたもの(ful)という意味です。
RESTfulなWebサービスはHTTPプロトコルを使用してデータを転送するAPIであり、Webアプリケーションの開発でよく使用されます。
原則[編集 | ソースを編集]
RESTfulなWebサービスは、以下の原則に従って設計されます。 これらの原則に従って設計されたRESTfulなWebサービスは、柔軟性があり、拡張性が高く、シンプルで理解しやすいインターフェースを提供することができます。
- リソースの識別
各リソースはURIで一意に識別されます。ここでいうリソースとはSQLでいう「レコード」に相当するものです。
- リソースの操作
HTTPメソッド(GET、POST、PUT、DELETE)を使用してリソースに対する操作を定義します。 この操作はSQLでいう「CRUD(CREATE,READ,UPDATE,DELTE)」に相当するものです。
- メッセージの自己完結性
各メッセージは必要な情報をすべて含んでいるためセッション状態を持ちません。
- ハイパーリンクの使用
リソース間の関連性はハイパーリンクを使用して簡単にアクセスできるようにします。 一般的なデータベースでは「リレーション」を表現するのに関連するレコードのユニークIDを保持することが多いですが、RESTでは一歩踏み込んで別リソースへのハイパーリンクまで作り上げてデータを返してあげます。