エクスポート (0) 印刷
すべて展開
このトピックはまだ評価されていません - このトピックを評価する

WebHttpRelayBinding クラス

SOAP メッセージではなく、HTTP 要求を介して公開される Web サービスのエンドポイントを構成するために使用されるバインド。

System..::..Object
  System.ServiceModel.Channels..::..Binding
    Microsoft.ServiceBus..::..WebHttpRelayBinding

名前空間:  Microsoft.ServiceBus
アセンブリ:  Microsoft.ServiceBus (Microsoft.ServiceBus.dll)
public class WebHttpRelayBinding : Binding, 
	IBindingRuntimePreferences

WebHttpRelayBinding 型は、以下のメンバーを公開しています。

  名前説明
パブリック メソッドWebHttpRelayBinding()()()()WebHttpRelayBinding クラスの新しいインスタンスを初期化します。
パブリック メソッドWebHttpRelayBinding(String)指定した構成名を使用して WebHttpRelayBinding クラスの新しいインスタンスを初期化します。
パブリック メソッドWebHttpRelayBinding(EndToEndWebHttpSecurityMode, RelayClientAuthenticationType)指定したセキュリティの種類とリレー クライアント認証を使用して WebHttpRelayBinding クラスの新しいインスタンスを初期化します。
先頭に戻る
  名前説明
パブリック プロパティAllowCookiesWebHttpRelayBinding を介して送信されるメッセージ内で Cookie を許可するかどうかを指定する値を取得または設定します。
パブリック プロパティCloseTimeout (Binding から継承されています。)
パブリック プロパティContentTypeMapperコンテンツ タイプ マッパーを取得または設定します。
パブリック プロパティEnvelopeVersionSOAP エンベロープ バージョンを取得します。
パブリック プロパティHostNameComparisonModeホスト名で使用されている比較モードを取得または設定します。
パブリック プロパティIsDynamicリレー バインドが動的であるかどうかを取得または設定します。
パブリック プロパティMaxBufferPoolSizeトランスポートによって使用される最大バッファー プール サイズを取得または設定します。
パブリック プロパティMaxBufferSizeトランスポートによってサポートされる最大バッファー サイズを取得または設定します。
パブリック プロパティMaxReceivedMessageSize受信できる最大メッセージ サイズを取得または設定します。
パブリック プロパティMessageVersion (Binding から継承されています。)
パブリック プロパティName (Binding から継承されています。)
パブリック プロパティNamespace (Binding から継承されています。)
パブリック プロパティOpenTimeout (Binding から継承されています。)
パブリック プロパティProxyAddressHTTP 要求に使用するプロキシのアドレスを格納する URI を取得または設定します。
パブリック プロパティReaderQuotas処理されるメッセージの xml リーダー クォータを取得または設定します。
パブリック プロパティReceiveTimeout (Binding から継承されています。)
パブリック プロパティSchemeバインドで使用するエンドポイントのスキームを取得します。 (Binding..::..Scheme をオーバーライドします。)
パブリック プロパティSecurity現在のインスタンスのセキュリティ設定を取得します。
パブリック プロパティSendTimeout (Binding から継承されています。)
パブリック プロパティTransferMode転送モードを取得または設定します。
パブリック プロパティUseDefaultWebProxyマシン全体のプロキシ設定とユーザー固有の設定のどちらを使用するかを示す値を取得または設定します。
パブリック プロパティWriteEncodingメッセージ テキストを作成するために使用される文字エンコードを取得または設定します。
先頭に戻る
  名前説明
パブリック メソッドBuildChannelFactory<(Of <<'(TChannel>)>>)(array<Object>[]()[][]) (Binding から継承されています。)
パブリック メソッドBuildChannelFactory<(Of <<'(TChannel>)>>)(BindingParameterCollection) (Binding から継承されています。)
パブリック メソッドBuildChannelListener<(Of <<'(TChannel>)>>)(array<Object>[]()[][]) (Binding から継承されています。)
パブリック メソッドBuildChannelListener<(Of <<'(TChannel>)>>)(BindingParameterCollection) (Binding から継承されています。)
パブリック メソッドBuildChannelListener<(Of <<'(TChannel>)>>)(Uri, array<Object>[]()[][]) (Binding から継承されています。)
パブリック メソッドBuildChannelListener<(Of <<'(TChannel>)>>)(Uri, BindingParameterCollection) (Binding から継承されています。)
パブリック メソッドBuildChannelListener<(Of <<'(TChannel>)>>)(Uri, String, array<Object>[]()[][]) (Binding から継承されています。)
パブリック メソッドBuildChannelListener<(Of <<'(TChannel>)>>)(Uri, String, BindingParameterCollection) (Binding から継承されています。)
パブリック メソッドBuildChannelListener<(Of <<'(TChannel>)>>)(Uri, String, ListenUriMode, array<Object>[]()[][]) (Binding から継承されています。)
パブリック メソッドBuildChannelListener<(Of <<'(TChannel>)>>)(Uri, String, ListenUriMode, BindingParameterCollection) (Binding から継承されています。)
パブリック メソッドCanBuildChannelFactory<(Of <<'(TChannel>)>>)(array<Object>[]()[][]) (Binding から継承されています。)
パブリック メソッドCanBuildChannelFactory<(Of <<'(TChannel>)>>)(BindingParameterCollection) (Binding から継承されています。)
パブリック メソッドCanBuildChannelListener<(Of <<'(TChannel>)>>)(array<Object>[]()[][]) (Binding から継承されています。)
パブリック メソッドCanBuildChannelListener<(Of <<'(TChannel>)>>)(BindingParameterCollection) (Binding から継承されています。)
パブリック メソッドCreateBindingElementsバインド用のバインド要素を使用してコレクションを作成します。 (Binding..::..CreateBindingElements()()()() をオーバーライドします。)
パブリック メソッドEquals (Object から継承されています。)
プロテクト メソッドFinalize (Object から継承されています。)
パブリック メソッドGetHashCode (Object から継承されています。)
パブリック メソッドGetProperty<(Of <<'(T>)>>) (Binding から継承されています。)
パブリック メソッドGetType (Object から継承されています。)
プロテクト メソッドMemberwiseClone (Object から継承されています。)
パブリック メソッドShouldSerializeName (Binding から継承されています。)
パブリック メソッドShouldSerializeNamespace (Binding から継承されています。)
パブリック メソッドToString (Object から継承されています。)
先頭に戻る
  名前説明
明示的なインターフェイスの実装プライベート プロパティIBindingRuntimePreferences..::..ReceiveSynchronously着信要求が同期に処理されるか非同期に処理されるかを示す値を取得します。
先頭に戻る

The WebHttpRelayBinding is ideal for integrating simple non-WCF clients with Service Bus endpoints because it exposes REST endpoints for web services. Therefore, any client capable of REST-ful communication can interact with services (listeners) hosted in the Service Bus via the WebHttpRelayBinding. However, if more sophisticated security and reliability features are required, then WS2007HttpRelayBinding would be more appropriate.

The following example shows how to define and use WebHttpRelayBinding in an application configuration file. The binding in this example has client authentication turned off, which means that the client is not required to present a security token to the Windows Azure Service Bus.

<system.serviceModel>
  <bindings>
    <!-- Application Binding -->
    <webHttpRelayBinding>
      <binding name="customBinding">
        <!-- Turn off client authentication so that client does not need to present credential through browser or fiddler -->
        <security relayClientAuthenticationType="None" />
      </binding>
    </webHttpRelayBinding>
  </bindings>

  <services>
    <!-- Application Service -->
    <service name="Microsoft.ServiceBus.Samples.ImageService">
      <endpoint name="RelayEndpoint"
                contract="Microsoft.ServiceBus.Samples.IImageContract"
                binding="webHttpRelayBinding"
                bindingConfiguration="customBinding"
                behaviorConfiguration="sharedSecretClientCredentials"
                address="" />
    </service>
  </services>

  <behaviors>
    <!-- Specify service and endpoint behaviors here. -->
  </behaviors>

</system.serviceModel>

The following example illustrates the use of WebHttpRelayBinding programmatically with custom settings. The custom binding has client authentication turned off, which means that the client is not required to present a security token to the Windows Azure Service Bus. This example is a modified version of the WebHttp SDK sample, which specifies the binding for the service endpoint programmatically instead of specifying it in the application configuration file. The WebHttp SDK sample can be found in the SDK install directory under \Samples\ServiceBus\ExploringFeatures\Bindings\WebHttp.

This example starts by specifying the credentials the service application is expected to send to the Windows Azure Service Bus by creating an endpoint behavior. Next, it creates the binding, the service address, and starts the web service host. After starting the web service, the user can use a browser to get the image that the service exposes at the specified URL.

// Configure the credentials for the service and client endpoints through an endpoint behavior.
TransportClientEndpointBehavior relayCredentials = new TransportClientEndpointBehavior();
relayCredentials.CredentialType = TransportClientCredentialType.SharedSecret;
relayCredentials.Credentials.SharedSecret.IssuerName = issuerName;
relayCredentials.Credentials.SharedSecret.IssuerSecret = issuerSecret;

// Create the binding with custom settings.
WebHttpRelayBinding binding = new WebHttpRelayBinding();
binding.Security.RelayClientAuthenticationType = RelayClientAuthenticationType.None;

// Get the service URI.
Uri address = ServiceBusEnvironment.CreateServiceUri("https", serviceNamespace, "Image");

// Create the web service host.
WebServiceHost host = new WebServiceHost(typeof(ImageService), address);
// Add the service endpoint with the WebHttpRelayBinding binding.
host.AddServiceEndpoint(typeof(IImageContract), binding, address);
// Add the credentials through the endpoint behavior.
host.Description.Endpoints[0].Behaviors.Add(relayCredentials);
// Start the service.
host.Open();

Console.WriteLine("Copy the following address into a browser to see the image: ");
Console.WriteLine(address + "GetImage");
Console.WriteLine();
Console.WriteLine("Press [Enter] to exit");
Console.ReadLine();

host.Close();
この型の public static (Visual Basic では Shared) のメンバーはすべて、スレッド セーフです。インスタンス メンバーの場合は、スレッド セーフであるとは限りません。
この情報は役に立ちましたか。
(残り 1500 文字)
フィードバックをいただき、ありがとうございました

コミュニティの追加

追加
表示:
© 2014 Microsoft. All rights reserved.