本物の意味は何ですか複数の表現を持つリソースは安らかですか? InfoQ's "A Brief Introduction to REST"を読んだ後、私は混乱しています。表現は何ですか?安心の原則
安心の原則
答えて
表現は、データを表示および/または転送するための特定の方法です。同じリソースは、さまざまな方法で表現することができます。
- としてHTMLページ
- XML文書
- としてJSONデータ構造として
- プレーンテキストとして
- でもPDFファイル希望の場合
- ...
「表現」を「データ形式」と交換すると、より理解を深めることができます。
HTML::
<h1>John Doe</h1>
XML:
<customer-name>John Doe</customer-name>
JSON:
01 "顧客" リソースため例
{ "UserName" : "John Doe", }
メタファー:
ちょうど絵を考えます。これは、ビットマップ、PNG、JPEG、その他多くのフォーマットやデータ構造として再現できます。それらのすべては同じ絵を示していますが、内部構造が異なります。(彼らの「表現」)
実用的な考慮事項:Webアプリケーション環境で
最も一般的な表現は、ブラウザに送信され、標準出力として(X)HTMLです。 AjaxとWebアプリケーションへの自動アクセスに関しては、XMLとJSONが続きます。
リソースは、基本的にはデータの集合です。この例では、リソースは特定の顧客との関連データです。
リソースを取得すると、そのリソースが取得されます。現在、ほとんどのデータには、複数の表現があります。データテーブルやチャートなどを考えてみてください。 この例では、HTTP受け入れヘッダーを設定することによって、受信する表現を定義しています。 xml形式の最初の例では、vcard形式の2番目の例です。
これを見てみましょう:REST Wikipedia article
リソースは、サーバー、「もの」に何かある、と記事は、ちょうどあなたが複数のメッセージを約返さギ持つことができると言っているという点で、それを記述する「もの」異なる方法...
RESTを定義するRoy Fielding's dissertationをご覧ください。
実際、「表現」はこれらの答えよりも抽象的です。 「リプレゼンテーション」とは、単にリソース全体ではないことを意味します。たとえば、社内HRデータベースのリソースである従業員レコードがあります。 「従業員」は、RESTfulアーキテクチャを介して公開する明白なリソース名詞です。しかし、私の従業員IDに電子メールURIでアクセスすると、その表現は、HR特典URIを通じて従業員IDにアクセスするときに表示される表現とはまったく異なります。
DRの答え(JSON、XMLなど)は、実際にはREST用語ではメディアタイプと呼ばれています。これは単にレスポンスのデータ形式です。
- 1. 原則の原則
- 2. 設計原則
- 3. スレッディングとSOLID原則
- 4. SOLIDの原則のリファクタリング
- 5. SOLIDプログラミングの原則の例
- 6. ロングポーリングサーバーの原則(クライアントID)
- 7. RMIインターフェイスの設計原則
- 8. コマンドとMVVMの原則 - RelayCommands
- 9. 安心なルーティング
- 10. OpenCV SurfFeatureDetector働く原則
- 11. WCF CustomRoleProvider原則権限
- 12. SSPI:ユーザー原則名WCFクライアント
- 13. デザインアプローチ:Android安心JSON
- 14. 継承とインターフェイスの分離の原則
- 15. ウェブスキャンソフトウェアの原則は何ですか?
- 16. 単一責任の原則と集約
- 17. .NETにおけるBODMASの原則
- 18. 単一の責任原則とイベントリスナー
- 19. 単一の責任原則 - チェス盤ピース
- 20. 長いポーリングサーバーの原則(クライアント認証)
- 21. ASP.NETのDRY原則に続いて、
- 22. React Nativeの原則は何ですか?
- 23. PCI/DSS:安心時のデータ
- 24. Spring 4安心のセキュリティ
- 25. JAVA安心なWebサービスとPHP安心なWebサービス。最高のもの?
- 26. デザインパターン - 抽象ファクトリーパターンとオープンクローズド原則
- 27. 安心してSOAPを
- 28. wcf安心設計クイズシステム
- 29. WebClient安心して削除
- 30. 安心なAPIのためのnginx.conf
私は今それを得た。ソースがある場合は、何らかの形でそれらを表現する必要があります。しかし、新しい疑問はなぜ私たちが実際の情報源を使用しないのかです。それはサーバーが非常に遅いためですか? – Iguramu
反対に、表現レイヤを追加することは、キャッシュやその他の速度の最適化とは関係ありません。 ほとんどの場合、元の送信元だけを送信することはできません。あなたのデータがMySQLデータベースから来たら、あなたは何を送るでしょうか?あなたはあなたのデータをある種の表現に変換する必要があります。 –
http://tomayko.com/writings/rest-to-my-wifeの最後の段落をチェックすることができます。 Ryanは、「名詞は普遍的なものではなく、動詞は多形性ではない」と言っています。 XMLは普遍的なデータ定義言語ではありませんか? – Iguramu