1

ご覧のとおり、私は比較的新しいので、この質問を投稿した後に私を殺さないでください:)私は現在のジレンマを説明するために最善を尽くします。

ワーカーロール内のWindowsAzureでホストされる「Guardianサービス」のようなものを作成しています。このサービスには外部ポートがあり、HTTPS経由でアクセスして、クライアントがサービスメソッドを呼び出せるようにすることができます。

WCFサービスは、内部ポートのみが開いており、Guardianサービスを使用してのみアクセスできる他のワーカーロールでホストされている他のサービスを呼び出すことを目的としています。それが主なアイデアです。プロキシか何かに似ています。

ジムオニールからの優れた記事をすでに読みました。ワーカーロールでホストされている他のWCFサービス内から内部サービスポイントにアクセスしようとした場合の注意点は次のとおりです。

彼のブログWCFWebロールでのエンドポイントのトラブルシューティング

これはこの質問のポイントではなく、その方法を私には完全に明確にしています。

現時点では、Guardian Service内から外部にアクセスできるようにしたいすべてのサービスからのすべての契約を実装せずに、これをどのように実行できるかわかりません。

それらを切り離すためのより良い方法がなければなりません。

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

ありがとうございました。

4

1 に答える 1

1

プロジェクトの正確な要件はわかりませんが、探しているのはWCFルーティングです。過去にこれを使用して、ワークフローインスタンスのさまざまなバージョンのリクエストをリダイレクトしました。

それが機能する方法は、エンドポイントに接続しているクライアントに対して完全に透過的です。ルーターの実装では、要求データ(メッセージヘッダーと本文)に基づいて、要求の送信先を決定する必要があります。

あなたの場合、SOAPと名前空間を正しく使用している場合は、メッセージのsoapアドレスに基づいて決定を下し、正しいエンドポイントに要求を送信できる可能性があります。メッセージのActionプロパティを確認することもできます。

役立つ可能性のあるいくつかのリンク:http: //msdn.microsoft.com/en-us/library/ee517423.aspx http://www.codeproject.com/Articles/227699/RoutingService-on-Azure

于 2013-01-13T16:34:44.697 に答える