質問

作成に関するベスト プラクティスとサンプル コードを含むいくつかの良いリンクを探しています。 休む.NETを使用した完全なWebサービス。

また、REST に関してその他のご意見がございましたら、よろしくお願いいたします。

役に立ちましたか?

解決

ADO.Net データ サービス とても簡単に構築できますし、 消費する .Net の世界では RESTful Web サービスが使用されますが、それでも概念を理解することが重要です。WCF (後に REST サポートが追加されました) と比較して、ADO.Net Data Services は主に REST 用に構築されました。

RESTful Web サービスを構築するためのガイドライン 必要なリソースに関するすべての情報が含まれています。

これもまた便利です ブログの記事:

統一インターフェイスの制約は、Web 用に構築されたサービスが Web アーキテクチャにどのように適切に参加できるかを説明します。これらの制約については、次のように簡単に説明します。

1) リソースの特定:リソースとは、名前を付けて表現できる任意の情報項目です (例:文書、特定の時点の株価、ラスベガスの現在の天気など)。サービス内のリソースは、URI を使用して識別する必要があります。

2) 表現によるリソースの操作:表現はリソースの物理的な表現であり、有効なメディア タイプに対応する必要があります。サービスの背後にあるデータ形式として標準のメディア タイプを使用すると、幅広い潜在的なクライアントがサービスにアクセスできるようになり、サービスの到達範囲が広がります。リソースとの対話は、URI によって識別されるリソースの表現の取得と操作に基づく必要があります。

3) 自己説明的なメッセージ:サービスの対話におけるステートレスの原則に従い、標準のメディア タイプを使用し、HTTP メソッドの使用法と制御ヘッダーを通じてメッセージのキャッシュ可能性を正しく示すことで、メッセージが自己記述的であることが保証されます。自己記述的なメッセージを使用すると、クライアントとサーバーの間の仲介者がどちらにも影響を与えることなくメッセージを処理できるようになります。

4) アプリケーション状態のエンジンとしてのハイパーメディア:アプリケーションの状態は、状態間を遷移するための URI とハイパーリンクを使用して表現する必要があります。これはおそらく、本書で説明されているアーキテクチャ上の制約の中で最も物議を醸しており、最も理解されていないものです。 ロイ・フィールディングの博士論文. 。実際、フィールディング氏の論文には、この点を強調するために、アプリケーションの状態を表すために HTTP Cookie を使用することに反対する明確な議論が含まれていますが、無視されることがよくあります。

他のヒント

Windows コミュニケーション財団 .NET 3.5以降のRESTモデルをサポート.

MSDN でドキュメントとコード サンプルを見つけることができます。

休息とポックス

REST を学習するためのリソース:

私が読んだ中で最も優れた紹介文は、 RESTful Webサービスの本, では、モデルと原則を説明するだけでなく、RESTful Web サービスを設計する方法を実際に示します。最も役立つのは、REST API の作成/指定方法のチェックリストです。

  1. データセットを把握する [つまり、データモデルを指定します]。
  2. データセットをリソースに分割します。リソースの種類ごとに次のようにします。
  3. リソースに URI を付けて名前を付けます。
  4. 統一インターフェイスのサブセットを公開する [つまり、使用される HTTP メソッドとその動作を指定する]。
  5. クライアントから受け入れられた表現を設計します [例:PUT または POST できる XML 形式]。
  6. クライアントに提供される表現を設計します [例:返される XML]。
  7. ハイパーメディア リンクとフォームを使用して、このリソースを既存のリソースに統合します。
  8. 典型的な出来事の流れを考えてみましょう。何が起こるのでしょうか?[これはユースケースの主な成功シナリオのようなものです。]
  9. エラー状態を考慮してください。[これはユースケースの例外シナリオに似ています。]

』の記事です。RESTful ウェブ』シリーズで xml.com 素晴らしい紹介です。

著者(Atom Publishing Protocol FameのJoe Gregorio)も定期的に洞察に満ちた記事を公開しています。ウェブログ. "RESTify DayTrader「(ベンチマーク株式取引アプリケーションに適用されるRESTアーキテクチャ)は、良い出発点です。私も好き "なぜこれほど多くの Python Web フレームワークがあるのでしょうか?これは、Python での小さな RESTful Web フレームワークの実装を示しています。

REST Web サービスの開発を始めたとき、Mark Masse の REST API 設計ルールブックを読みました。基本と理論を理解すると、WCF、HTTPListener、または ServiceStack を使用して REST を実装できるようになります。これらのフレームワークはすべて .NET であり、非常に優れたドキュメントが提供されています...

開始するには、Web 上に十分な情報があるサービス スタック (http://www.servicestack.net/) をお勧めします。

WCF は ASP.NET Web API を提供しています。それは問題ありませんが、私は使用しません。

いずれにせよ、現在は優れた REST フレームワークはありません。使いやすいものを選択し、本から学んだ理論を適用する必要があります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top