<webHttpBinding>
定義繫結項目,用於設定 Windows Communication Foundation (WCF) Web 服務回應 HTTP 要求 (而非 SOAP 訊息) 時的端點。
<<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 並在未來要求時傳播 Cookie。預設為 false。 當您與使用 Cookie 的 ASMX Web 服務互動時,可以使用這個屬性。如此一來,從伺服器傳回的 Cookie 就一定會自動複製到該服務未來所有的用戶端要求。 |
bypassProxyOnLocal |
布林值,指出本機位址是否略過 Proxy 伺服器。預設為 false。 |
closeTimeout |
|
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 |
包含此繫結之組態名稱的字串。這個值應該是唯一的,因為它會當做繫結的識別使用。 |
openTimeout |
TimeSpan 值,指定提供用來讓開啟作業完成的時間間隔。這個值應該大於或等於 Zero。預設為 00:01:00。 |
proxyAddress |
指定 HTTP Proxy 位址的 URI。如果 useSystemWebProxy 為 true,則這項設定必須為 null。預設為 null。 |
receiveTimeout |
TimeSpan 值,指定提供用來讓接收作業完成的時間間隔。這個值應該大於或等於 Zero。預設為 00:01:00。 |
sendTimeout |
TimeSpan 值,指定提供用來讓傳送作業完成的時間間隔。這個值應該大於或等於 Zero。預設為 00:01:00。 |
transferMode. |
TransferMode 值,指出以繫結設定的服務使用訊息傳輸的資料流處理模式或緩衝處理模式 (或兩者)。預設為 Buffered。 |
useDefaultWebProxy |
布林值,指定是否使用系統自動設定的 HTTP Proxy。預設為 true。 |
writeEncoding |
指定用於訊息文字的字元編碼。有效值包括以下的值: UnicodeFffeTextEncoding:Unicode BigEndian 編碼方式。 Utf16TextEncoding:16 位元編碼方式。 Utf8TextEncoding:8 位元編碼方式。 預設為 Utf8TextEncoding。 |
子項目
項目 | 描述 |
---|---|
定義 POX 訊息複雜度的條件約束,而這些條件約束可由以此繫結所設定的端點處理。此項目的型別為 XmlDictionaryReaderQuotasElement。 |
|
定義繫結的安全性設定。此項目的型別為 WSHttpSecurityElement。 |
父項目
項目 | 描述 |
---|---|
這個項目會保存標準和自訂繫結的集合。每一個項目都是由它的 name 所識別。服務會使用 name 來連結繫結,以便利用繫結。 |
備註
WCF Web 程式設計模型可讓開發人員透過使用 "plain old XML" (POX) 樣式傳訊 (而非 SOAP 傳訊) 的 HTTP 要求公開 WCF Web 服務。對於使用 HTTP 要求與服務通訊的用戶端,服務的端點必須以附加有 <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