2011-08-04 10 views
4

WCF Web APIに基づいてRESTful Webサービスを作成しようとしています。また、OAuthを使用してアクセスを制御する必要があります。このためには、DotNetOpenAuthオープンソースライブラリを使用しています。DotNetOpenAuthとWCF WebAPIの統合

2人を統合するのに成功した人はいますか?私は、WCF Web APIのHTTPエンティティ表現から、DNOAが理解できるもの(HTTPリクエスト、HTTPヘッダーなど)に変換するのに苦労しています。

すべてのヒントをいただければ幸いです。

+0

[WCF WebAPIディスカッションページ](http://wcf.codeplex.com/discussions/topics/4885/web-api)で質問をクロス投稿することをお勧めします。いくつかのかなりスマートで知っている人がそこに浮かんでいます。そのような若い(そしてアルファ)図書館であることは、この大きな疑問に対して、そこで余分な可視性を得るかもしれません。 – ckittel

+0

完了:http://wcf.codeplex.com/discussions/267859 –

+0

私はあなたにこの男をバグさせることをお勧めします。https://twitter.com/#!/GQAdonis2008彼はWCF Web APIのOAuth実装に取り​​組んでいました。 –

答えて

2

少し具体的に教えてください。

WebAPIでは、リクエストはHttpRequestMessageクラスで表されます。応答はHttpResponseMessageクラスで表されます。

DNOAの知識はありませんでしたが、私が見たところでは、からHttpRequestInfo(string httpMethod, Uri requestUrl, string rawUrl, WebHeaderCollection headers, Stream inputStream)を使ってHttpRequestInfoを簡単に作成できます。

HTTPメソッドとリクエストURIは直接HttpRequestMessageプロパティです。 入力ストリームはContentプロパティで取得します。 WebAPIのHttpRequestHeadersから直接WebHeaderCollectionを作成する方法はありません。ただし、HttpRequestHeadersのエントリを繰り返して、WebHeaderCollectionに1つずつ挿入することができます。

+0

はい、それはちょうど私がいくつかのさらなる研究の後にやってしまったものです。あなたがそれを確認して良かった。将来の読者のためにあなたの答えを正しいものとしてマークしてください。 –

+0

HttpRequestMessageのContentプロパティからStreamオブジェクトをどのように作成しましたか? @PedroFelix – Daniel

+2

私はこの実装のためのいくつかのサンプルコードを見たいと思います。 – Raelshark