<webHttpBinding>
SOAP メッセージに代わって HTTP 要求に応答する Windows Communication Foundation (WCF) Web サービスのエンドポイントを構成するために使用するバインディング要素を定義します。
スキーマの階層
<system.serviceModel>
<bindings>
<<wsHttpBinding>>
構文
<webHttpBinding>
<binding
allowCookies="Boolean"
bypassProxyOnLocal="Boolean"
closeTimeout="TimeSpan"
hostNameComparisonMode="StrongWildCard/Exact/WeakWildcard"
maxBufferPoolSize="integer"
maxBufferSize="integer"
maxReceivedMessageSize="Integer"
name="string"
openTimeout="TimeSpan"
proxyAddress="URI"
receiveTimeout="TimeSpan"
sendTimeout="TimeSpan"
transferMode="Buffered/Streamed/StreamedRequest/StreamedResponse"
useDefaultWebProxy="Boolean">
writeEncoding="UnicodeFffeTextEncoding/Utf16TextEncoding/Utf8TextEncoding"
<security mode="None/Transport/TransportCredentialOnly">
<transport clientCredentialType =
"Basic/Certificate/Digest/None/Ntlm/Windows"
proxyCredentialType="Basic/Digest/None/Ntlm/Windows"
realm="string" />
</security>
<readerQuotas maxArrayLength="Integer" maxBytesPerRead="Integer" maxDepth="Integer" maxNameTableCharCount="Integer" maxStringContentLength="Integer" />
</binding>
</webHttpBinding>
属性と要素
以降のセクションでは、属性、子要素、および親要素について説明します。
属性
属性 | 説明 |
---|---|
allowCookies |
クライアントが Cookie を受け入れて、それらを今後の要求に反映させるかどうかを示すブール値。既定値は false です。 Cookie を使用する ASMX Web サービスと対話する場合に、このプロパティを使用できます。この方法で、サーバーから返される Cookie を、それ以降のサービスに対するすべてのクライアント要求に自動的にコピーできます。 |
bypassProxyOnLocal |
ローカル アドレスでプロキシ サーバーをバイパスするかどうかを示すブール値。既定値は false です。 |
closeTimeout |
クローズ操作が完了するまでの期間を指定する TimeSpan 値。この値は必ず Zero 以上である必要があります。既定値は 00:01:00 です。 |
hostnameComparisonMode |
URI の解析に使用する HTTP ホスト名比較モードを指定します。この属性は HostnameComparisonMode 型で、URI が一致したときにサービスへのアクセスにホスト名を使用するかどうかを指定します。既定値は StrongWildcard で、一致しているホスト名を無視します。 |
maxBufferPoolSize |
このバインディングに使用するバッファー プール サイズの上限を指定する整数。既定は 524,288 バイト (512 * 1024) です。Windows Communication Foundation (WCF) では、多くの部分でバッファーを使用します。使用するたびに毎回バッファーを作成および破棄すると負荷が高くなります。バッファーのガベージ コレクションも同様です。バッファー プールを使用すると、バッファーをプールから取得して使用し、作業が終わったらプールに戻すことができます。これで、バッファーの作成と破棄のオーバーヘッドを回避できます。 |
maxBufferSize |
チャネルからメッセージを受け取るメッセージ バッファーのマネージャーが使用するために割り当てられる最大メモリ量を指定する整数。既定値は 524,288 (0x80000) バイトです。 |
maxReceivedMessageSize |
このバインディングで構成されるチャネルで受信可能な最大メッセージ サイズ (ヘッダーを含む) をバイト単位で指定する正の整数。この制限を超えるメッセージの送信者はエラーを受信します。メッセージは受信者によって破棄され、トレース ログにこのイベントのエントリが作成されます。既定値は 65536 です。
注 :
ASP.NET 互換モードでは、この値を増やすだけでは十分ではありません。httpRuntime の値も増やす必要があります (「httpRuntime Element (ASP.NET Settings Schema)」を参照)。
|
name |
バインディングの構成名を格納する文字列です。この値は、バインディングの ID として使用されるため、一意にする必要があります。.NET Framework 4 以降では、バインディングおよび動作に名前を付ける必要はありません。既定の構成、および名前のないバインディングと動作の詳細については、「Simplified Configuration」および「Simplified Configuration for WCF Services」を参照してください。 |
openTimeout |
実行中の操作が完了するまでの時間間隔を指定する TimeSpan 値です。この値は必ず Zero 以上である必要があります。既定値は 00:01:00 です。 |
proxyAddress |
HTTP プロキシのアドレスを指定する URI。useSystemWebProxy が true の場合、この設定を null にする必要があります。既定値は null です。 |
receiveTimeout |
受信操作が完了するまでの時間間隔を指定する TimeSpan 値です。この値は必ず Zero 以上である必要があります。既定値は 00:01:00 です。 |
sendTimeout |
送信操作が完了するまでの時間間隔を指定する TimeSpan 値です。この値は必ず Zero 以上である必要があります。既定値は 00:01:00 です。 |
transferMode |
バインディングで構成されたサービスがメッセージ転送のストリーム モードまたはバッファー モード (あるいは両方のモード) を使用するかどうかを示す TransferMode 値。既定値は Buffered です。 |
useDefaultWebProxy |
システムの自動設定 HTTP プロキシを使用するかどうかを指定するブール値。既定値は true です。 |
writeEncoding |
メッセージ テキストに使用される文字エンコーディングを指定します。有効な値は次のとおりです。 UnicodeFffeTextEncoding: Unicode BigEndian エンコーディング。 Utf16TextEncoding: 16 ビットのエンコーディング。 Utf8TextEncoding: 8 ビットのエンコーディング。 既定値は Utf8TextEncoding です。 |
子要素
要素 | 説明 |
---|---|
このバインディングを使用して構成されるエンドポイントにより処理可能な、POX メッセージの複雑さに対する制約を定義します。この要素は XmlDictionaryReaderQuotasElement 型です。 |
|
バインディングのセキュリティ設定を定義します。この要素は WSHttpSecurityElement 型です。 |
親要素
要素 | 説明 |
---|---|
この要素には、標準バインディングおよびカスタム バインディングのコレクションが保持されます。 |
解説
WCF Web プログラミング モデルを使用すると、開発者は、SOAP ベースのメッセージングに代わって "Plain Old XML" (POX) スタイルのメッセージングを使用する HTTP 要求を通じて WCF Web サービスを公開できます。HTTP 要求を使用してサービスと通信するクライアントに対しては、サービスのエンドポイントを <webHttpBinding>WebHttpBehavior< がアタッチされた <<wsHttpBinding>>> で構成する必要があります。
WCF の配信および ASP.AJAX 統合のサポートは、Web プログラミング モデル上に構築されます。このモデルの詳細については、「Web Programming Model」を参照してください。
参照
リファレンス
WebHttpBinding
WebHttpBindingElement
概念
その他のリソース
Web Programming Model
Windows Communication Foundation Bindings
Configuring System-Provided Bindings
Using Bindings to Configure Services and Clients