<wsHttpBinding>
Definuje zabezpečenou, spolehlivou a interoperabilní vazbu, která je vhodná pro ne duplexní kontrakty služeb. Vazba implementuje následující specifikace: WS-Reliable Zasílání zpráv pro spolehlivost a WS-Security pro zabezpečení a ověřování zpráv. Přenos je HTTP a kódování zpráv je kódování Text/XML.
<Konfigurace>
<System.servicemodel>
<Vazby>
<wsHttpBinding>
Syntax
<wsHttpBinding>
<binding allowCookies="Boolean"
bypassProxyOnLocal="Boolean"
closeTimeout="TimeSpan"
hostNameComparisonMode="StrongWildCard/Exact/WeakWildcard"
maxBufferPoolSize="integer"
maxReceivedMessageSize="Integer"
messageEncoding="Text/Mtom"
name="string"
openTimeout="TimeSpan"
proxyAddress="URI"
receiveTimeout="TimeSpan"
sendTimeout="TimeSpan"
textEncoding="UnicodeFffeTextEncoding/Utf16TextEncoding/Utf8TextEncoding"
transactionFlow="Boolean"
useDefaultWebProxy="Boolean">
<reliableSession ordered="Boolean"
inactivityTimeout="TimeSpan"
enabled="Boolean" />
<security mode="Message/None/Transport/TransportWithCredential">
<transport clientCredentialType="Basic/Certificate/Digest/None/Ntlm/Windows"
proxyCredentialType="Basic/Digest/None/Ntlm/Windows"
realm="string" />
<message algorithmSuite="Basic128/Basic192/Basic256/Basic128Rsa15/Basic256Rsa15/TripleDes/TripleDesRsa15/Basic128Sha256/Basic192Sha256/TripleDesSha256/Basic128Sha256Rsa15/Basic192Sha256Rsa15/Basic256Sha256Rsa15/TripleDesSha256Rsa15"
clientCredentialType="Certificate/IssuedToken/None/UserName/Windows"
establishSecurityContext="Boolean"
negotiateServiceCredential="Boolean" />
</security>
<readerQuotas maxArrayLength="Integer"
maxBytesPerRead="Integer"
maxDepth="Integer"
maxNameTableCharCount="Integer"
maxStringContentLength="Integer" />
</binding>
</wsHttpBinding>
Atributy a elementy
Následující části popisují atributy, podřízené a nadřazené elementy.
Atributy
Atribut | Popis |
---|---|
allowCookies | Logická hodnota, která označuje, jestli klient přijímá soubory cookie a šíří je v budoucích požadavcích. Výchozí hodnotou je hodnota false. Tuto vlastnost můžete použít při interakci s webovými službami ASMX, které používají soubory cookie. Tímto způsobem si můžete být jistí, že se soubory cookie vrácené ze serveru automaticky zkopírují do všech budoucích požadavků klientů pro tuto službu. |
Bypassproxyonlocal | Logická hodnota, která určuje, jestli se má obejít proxy server pro místní adresy. Výchozí formát je false . |
closeTimeout | Hodnota TimeSpan , která určuje časový interval zadaný pro dokončení operace uzavření. Tato hodnota by měla být větší nebo rovna Zero. Výchozí hodnota je 00:01:00. |
Hostnamecomparisonmode | Určuje režim porovnání názvů hostitelů HTTP, který se použije k parsování identifikátorů URI. Tento atribut je typu HostNameComparisonMode, který označuje, jestli se název hostitele používá k připojení ke službě při porovnávání identifikátoru URI. Výchozí hodnota je StrongWildcard, která ignoruje název hostitele v shodě. |
Maxbufferpoolsize | Celé číslo, které určuje maximální velikost fondu vyrovnávacích pamětí pro tuto vazbu. Výchozí hodnota je 524 288 bajtů (512 × 1024). Mnoho částí Windows Communication Foundation (WCF) používá vyrovnávací paměti. Vytváření a ničení vyrovnávacích pamětí při každém jejich použití je nákladné a uvolňování paměti pro vyrovnávací paměti je také nákladné. Pomocí fondů vyrovnávacích pamětí můžete z fondu vzít vyrovnávací paměť, použít ji a po dokončení ji vrátit do fondu. Tím se vyhnete režijní režii při vytváření a ničení vyrovnávacích pamětí. |
Maxreceivedmessagesize | Kladné celé číslo, které určuje maximální velikost zprávy v bajtech včetně hlaviček, které lze přijímat v kanálu nakonfigurovaného pomocí této vazby. Odesílatel zprávy překračující tento limit obdrží chybu SOAP. Příjemce zprávu zahodí a vytvoří záznam události v protokolu trasování. Výchozí hodnota je 65536. |
messageEncoding | Definuje kodér použitý ke kódování zprávy. Mezi platné hodnoty patří: – Text: Použijte kodér textových zpráv. - Mtom: Použijte kodér MTOM (Message Transmission Organization Mechanism 1.0). - Výchozí hodnota je Text. Tento atribut je typu WSMessageEncoding. |
name | Řetězec, který obsahuje název konfigurace vazby. Tato hodnota by měla být jedinečná, protože se používá jako identifikace vazby. Počínaje rozhraním .NET Framework 4 není nutné, aby vazby a chování měly název. Další informace o výchozí konfiguraci a bezpomenných vazbách a chování najdete v tématu Zjednodušená konfigurace a zjednodušená konfigurace pro služby WCF. |
openTimeout | Hodnota TimeSpan , která určuje časový interval zadaný pro dokončení operace otevření. Tato hodnota by měla být větší nebo rovna Zero. Výchozí hodnota je 00:01:00. |
Proxyaddress | Identifikátor URI, který určuje adresu proxy serveru HTTP. Pokud useSystemWebProxy je true , toto nastavení musí být null . Výchozí formát je null . |
receiveTimeout | Hodnota TimeSpan , která určuje časový interval zadaný pro dokončení operace příjmu. Tato hodnota by měla být větší nebo rovna Zero. Výchozí hodnota je 00:01:00. |
sendTimeout | Hodnota TimeSpan , která určuje časový interval zadaný pro dokončení operace odeslání. Tato hodnota by měla být větší nebo rovna Zero. Výchozí hodnota je 00:01:00. |
TextEncoding | Určuje kódování znakové sady, které se má použít pro generování zpráv ve vazbě. Mezi platné hodnoty patří: – UnicodeFffeTextEncoding: Kódování Unicode BigEndian. - Utf16TextEncoding: 16bitové kódování. - Utf8TextEncoding: 8bitové kódování. Výchozí hodnota je Utf8TextEncoding. Tento atribut je typu Encoding. |
transactionFlow | Logická hodnota, která určuje, zda vazba podporuje tok ws-Transactions. Výchozí formát je false . |
useDefaultWebProxy | Logická hodnota, která určuje, jestli se používá automaticky nakonfigurovaný proxy server HTTP systému. Výchozí formát je true . |
Podřízené elementy
Element | Popis |
---|---|
<Zabezpečení> | Definuje nastavení zabezpečení pro vazbu. Tento prvek je typu WSHttpSecurityElement. |
<čtenářQuotas> | Definuje omezení složitosti zpráv SOAP, které mohou být zpracovány koncovými body nakonfigurovanými pomocí této vazby. Tento prvek je typu XmlDictionaryReaderQuotasElement. |
<reliableSession> | Určuje, jestli se mezi koncovými body kanálu navazují spolehlivé relace. |
Nadřazené elementy
Element | Popis |
---|---|
<Vazby> | Tento element obsahuje kolekci standardních a vlastních vazeb. |
Poznámky
Je WSHttpBinding
podobný jako , BasicHttpBinding
ale poskytuje více funkcí webové služby. Používá přenos HTTP a poskytuje zabezpečení zpráv, stejně jako BasicHttpBinding, ale také poskytuje transakce, spolehlivé zasílání zpráv a ws-addressing, buď povolené ve výchozím nastavení, nebo dostupné prostřednictvím jednoho nastavení řízení.
Příklad
<configuration>
<system.ServiceModel>
<bindings>
<wsHttpBinding>
<binding closeTimeout="00:00:10"
openTimeout="00:00:20"
receiveTimeout="00:00:30"
sendTimeout="00:00:40"
bypassProxyOnLocal="false"
transactionFlow="false"
hostNameComparisonMode="WeakWildcard"
maxReceivedMessageSize="1000"
messageEncoding="Mtom"
proxyAddress="http://foo/bar"
textEncoding="utf-16"
useDefaultWebProxy="false">
<reliableSession ordered="false"
inactivityTimeout="00:02:00"
enabled="true" />
<security mode="Transport">
<transport clientCredentialType="Digest"
proxyCredentialType="None"
realm="someRealm" />
<message clientCredentialType="Windows"
negotiateServiceCredential="false"
algorithmSuite="Aes128"
defaultProtectionLevel="None" />
</security>
</binding>
</wsHttpBinding>
</bindings>
</system.ServiceModel>
</configuration>