Web API サンプル一覧
HttpClient のサンプル
Bing 翻訳のサンプル | VS 2012 ソース
HttpClient クラスを使用して Microsoft Translator サービスを呼び出す方法を示します。 Microsoft Translator サービス API には OAuth トークンが必要です。このトークンは、Translator サービスへのリクエストごとに、アプリケーションが Azure トークン サーバーにリクエストを送信することによって取得されます。 トークン サーバーからの結果は、翻訳サービスに送信された要求に送られます。 このサンプルを実行する前に、Azure Marketplace からアプリケーション キーを取得し、AccessTokenMessageHandler サンプル クラスの情報を入力する必要があります。
Google Maps のサンプル | 詳細な説明 | VS 2012 ソース
HttpClient を使用して、Google Maps API から Redmond, WA (ワシントン州レドモンド) のマップをダウンロードし、ローカル ファイルとして保存し、既定のイメージ ビューアーを開きます。
Twitter クライアントのサンプル | 詳細な説明 | VS 2012 ソース
HttpClient を使用して単純な Twitter クライアントを作成する方法を示します。 このサンプルでは、HttpMessageHandler を使用して OAuth 認証情報を送信 HttpRequestMessage に挿入します。 Twitter からの結果は、JSON.NET を使用して読み取られます。 このサンプルを実行する前に、Twitter からアプリケーション キーを取得し、OAuthMessageHandler サンプル クラスの情報を入力する必要があります。
世界銀行のサンプル | 詳細な説明 | VS 2010 ソース | VS 2012 ソース
JSON.NET を使用して結果を解析して、World Bank データ サイトからデータを取得する方法を示します。
Web API のサンプル
ASP.NET Web API の概要 | VS 2012 ソース
HTTP GET 要求をサポートする基本的な Web API を作成する方法を示します。 チュートリアル「ASP.NET Web API の概要」のソース コードが含まれています。
ASP.NET Web API JavaScript シナリオ – コメント | VS2012 ソース
ASP.NET Web API を使用して、ブラウザー クライアントをサポートし、jQuery を使用して簡単に呼び出すことができる Web API を構築する方法を示します。
連絡先マネージャー | VS 2010 ソース
このサンプルでは、ASP.NET Web API を使用して、簡単な連絡先マネージャー アプリケーションを構築します。 アプリケーションは、ASP.NET MVC アプリケーションで使用される連絡先マネージャー Web API と、連絡先の一覧を表示および管理するための Windows Phone アプリケーションで構成されます。
バッチ処理のサンプル | 詳細な説明 | VS 2012 ソース
ASP.NET 内で HTTP バッチ処理を実装する方法を示します。 バッチ処理は、1 つの MIME マルチパート エンティティ本文内に複数の HTTP 要求を配置することで構成され、HTTP POST としてサーバーに送信されます。 要求は個別に処理され、応答は別の MIME マルチパート エンティティ本文に配置され、クライアントに返されます。
コンテンツ コントロール | 詳細な説明 | VS 2010 ソース | VS 2012 ソース
ストリームを使用して要求エンティティと応答エンティティを非同期的に読み書きする方法を示します。 サンプル コントローラーには、要求エンティティ本体を非同期的に読み取ってローカル ファイルに格納する PUT アクションと、ローカル ファイルの内容を返す GET アクションの 2 つのアクションがあります。
カスタム アセンブリ リゾルバーのサンプル | VS 2012 ソース
動的に読み込まれたライブラリ アセンブリからのコントローラーの検出をサポートするように ASP.NET Web API を変更する方法を示します。 このサンプルでは、既定の実装を呼び出し、ライブラリ アセンブリを既定の結果に追加するカスタム IAssembliesResolver を実装しています。
カスタム メディア タイプ フォーマッタ サンプル | 詳細な説明 | VS 2010 ソース
BufferedMediaTypeFormatter 基本クラスを使用してカスタム メディア型フォーマッタを作成する方法を示します。 この基本クラスは、主に同期読み取りおよび書き込み操作を使用するフォーマッタを対象としています。 このサンプルでは、メディアの種類のフォーマッタを示すだけでなく、アプリケーションの HttpConfiguration の一部として登録してフックする方法も示しています。 また、主に非同期の読み取りおよび書き込み操作を使用するフォーマッタには、 MediaTypeFormatter 基本クラスを直接使用することもできます。
カスタム パラメーター バインド サンプル | 詳細な説明 | VS 2010 ソース
パラメーター バインド プロセスをカスタマイズする方法を示します。これは、要求からの情報をアクション パラメーターにバインドする方法を決定するプロセスです。 このサンプルでは、ホーム コントローラーには次の 4 つのアクションがあります。
- BindPrincipal は、HTTP GET メッセージからではなく、カスタム ジェネリック プリンシパルから IPrincipal パラメーターをバインドする方法を示しています。
- BindCustomComplexTypeFromUriOrBody は、メッセージ本文または HTTP POST メッセージの要求 URI から取得できる複合型パラメーターをバインドする方法を示しています。
- BindCustomComplexTypeFromUriWithRenamedProperty は、HTTP POST メッセージの要求 URI に由来する名前が変更されたプロパティを使用して複合型パラメーターをバインドする方法を示しています。
- PostMultipleParametersFromBody は、POST メッセージの本文から複数のパラメーターをバインドする方法を示しています。
ファイル アップロードのサンプル | 詳細な説明 | VS 2012 ソース
MIME Multipart File Upload を使用して ApiController にファイルをアップロードする方法と、ProgressNotificationHandler を使用して HttpClient で進行状況通知を設定する方法について説明します。 コントローラーは HTML ファイルアップロードの内容を非同期的に読み取り、1 つ以上の本文部分をローカル ファイルに書き込みます。 応答には、アップロードされたファイルに関する情報が含まれます。
Azure Blob Store へのファイルのアップロードのサンプル | 詳細な説明 | VS 2012 ソース
このサンプルはファイル アップロード サンプルに似ていますが、アップロードしたファイルをローカル ディスクに保存する代わりに、Windows Azure SDK for .NET を使用して Azure Blob Store に非同期的にファイルをアップロードします。 また、Azure Blob Storage コンテナーに現在存在する BLOB を一覧表示するためのメカニズムも提供します。 Azure SDK に付属する Azure Storage Emulator に対して実行されているサンプルを試すことができます。 Azure Storage アカウントがある場合は、実際のストレージ サービスに対しても実行できます。
Http メッセージ ハンドラー パイプラインのサンプル | 詳細な説明 | VS 2010 ソース
クライアント (HttpClient) とサーバー (ASP.NET Web API) の両方で HttpMessageHandler インスタンスを接続する方法を示します。 このサンプルでは、クライアントとサーバーの両方で同じハンドラーが使用されています。 両方の場所でまったく同じハンドラーが実行されることはまれですが、オブジェクト モデルはクライアント側とサーバー側で同じです。
JSON アップロードのサンプル | VS 2012 ソース
APIController との間で JSON をアップロードしてダウンロードする方法を示します。 このサンプルでは、最小限の ApiController を使用し、HttpClient を使用してアクセスします。
マッシュアップのサンプル | 詳細な説明 | VS 2012 ソース
ApiController アクション内から複数のリモート サイトに非同期的にアクセスする方法を示します。 アクションがヒットするたびに、要求は非同期的に実行されるため、スレッドはブロックされません。
メモリ トレースのサンプル | 詳細な説明 | VS 2010 ソース
このサンプル プロジェクトでは、カスタムのメモリ内トレース ライターを ASP.NET Web API アプリケーションにインストールする Nuget パッケージを作成します。
MongoDB のサンプル | 詳細な説明 | VS 2012 ソース
リポジトリ パターンを使用して、MongoDB を ApiController の永続ストアとして使用する方法を示します。
応答本文プロセッサのサンプル | VS 2012 ソース
応答エンティティ (つまり HTTP 応答本文) をクライアントに送信する前にローカル ファイルにコピーし、そのファイルに対して非同期的に追加処理を実行する方法を示します。 このサンプルでは、応答エンティティをラップする HttpMessageHandler を実装します。このエンティティはどちらも、それ自体を通常どおり出力に書き込み、ローカル ファイルに書き込みます。
XDocument のアップロードのサンプル | 詳細な説明 | VS 2012 ソース
PushStreamContent と HttpClient を使用して XDocument を ApiController にアップロードする方法を示します。
検証サンプル | VS 2010 ソース
ASP.NET WebAPI のモデルで検証属性を使用して HTTP 要求の内容を検証する方法を示します。 プロパティを必須としてマークする方法、フレームワーク定義属性とカスタム検証属性の両方を使用してモデルに注釈を付ける方法、および無効なモデル状態のエラー応答を返す方法を示します。
Web フォームのサンプル | 詳細な説明 | VS 2010 ソース
Web Forms プロジェクトに追加された ApiController を表示します。
RestBugs は、ASP.NET Web API と新しい HTTP クライアント ライブラリを使用してハイパーメディア駆動型システムを作成する方法を示す単純なバグ追跡アプリケーションです。 このサンプルには、ASP.NET Web API を使用したクライアントとサーバーの両方の実装が含まれています。 サーバーは、カスタム Razor フォーマッタを使用してリソース表現を生成します。 また、このサンプルでは、ハイパーメディア設計を使用してクライアントとサーバーを分離することで得られる利点を示す node.js サーバーも提供します。