BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース WCF Web API

WCF Web API

原文(投稿日:2011/01/31)へのリンク

ほとんどの開発者にとってWCFを最初に利用するのは、SOAPベースのWebサービスを公開する手段としてだ。しかしながらその名前に反して、Webサービスは実際のところWebサイトを構築するのには向いていない。XMLとJSONベースのRESTサービスが、大半のプロジェクトには、より適している。Microsoftは、このことを認識し、WCFを現代的な標準に合わせるプロジェクトに取り組んでいる。

WCF Web APIは、CodePlexでプレビューとして提供されている一連のライブラリだ。現在のところ2つの主要なプロジェクトが存在する。ひとつめはWCF HTTPだ。これは、新しいHTTPサーバおよびクライアントのスタックだ。このクライアントは、HTTP仕様に厳密に従って実装しており、あらゆるHTTPサービスを利用することが可能だとMicrosoftは主張している。HTTPメッセージを.NETクラスにマッピングするための拡張メソッドも含まれている。

サーバ側に関しては、HTTPチャネルのスタックがプラットフォーム非依存である。理論的には、IIS上のASP.NETとしても、単体のサービスとしても同様に動作する。この点では、WCFがすでに提供しているものと大差はないように見えるが、いくつかの特筆すべき改良点がある。HTTPチャネル、ディスパッチャ、サービスコンポーネントが、多くの拡張ポイントを含んだ形で設計されており、これにより開発者が従来のWCFサービスよりもパイプライン上でより多くの制御を行うことができる。

ふたつめのプロジェクトは、WCF jQueryサポートと呼ばれている。このプロジェクトは、jQueryの開発者が自然と思えるようなフォーマットでWCF開発者がサービスを簡単に公開できることを目的に設計されたものだ。つまり、クライアント側でのJSONベースのメッセージだ。サーバ側では、パラメータや返り値を通常のユーザ定義のクラスにマッピングするか、JsonValueクラスによって後ほど処理するかのどちらかを選択可能である。

WCF Web APIは、製品としてリリースされる段階にはなく、またオープンソースでもないことは記載しておくべきだろう。ソースコードは提供されているが、Microsoftがフィードバックを得られるように参照用途に提供されているにすぎない。

この記事に星をつける

おすすめ度
スタイル

BT