Sdílet prostřednictvím


<wsDualHttpBinding>

Definuje bezpečnou, spolehlivou a interoperabilní vazbu, která je vhodná pro duplexní kontrakty služeb nebo komunikaci prostřednictvím zprostředkovatelů SOAP.

<Konfigurace>
  <System.servicemodel>
    <Vazby>
      <wsDualHttpBinding>

Syntax

<wsDualHttpBinding>
  <binding name="String"
          closeTimeout="TimeSpan"
          openTimeout="TimeSpan"
          receiveTimeout="TimeSpan"
          sendTimeout="TimeSpan"
          bypassProxyOnLocal="Boolean"
          clientBaseAddress="URI"
          transactionFlow="Boolean"
          hostNameComparisonMode="StrongWildCard/Exact/WeakWildcard"
          maxBufferPoolSize="integer"
          maxReceivedMessageSize="Integer"
          messageEncoding="Text/Mtom"
          proxyAddress="URI"
          textEncoding="Unicode/BigEndianUnicode/UTF8"
          useDefaultWebProxy="Boolean">
    <reliableSession ordered="Boolean"
                     inactivityTimeout="TimeSpan" />
    <security mode="None/Message">
      <message clientCredentialType="None/Windows/UserName/Certificate/CardSpace"
               negotiateServiceCredential="Boolean"
               algorithmSuite="Basic128/Basic192/Basic256/Basic128Rsa15/Basic256Rsa15/TripleDes/TripleDesRsa15/Basic128Sha256/Basic192Sha256/TripleDesSha256/Basic128Sha256Rsa15/Basic192Sha256Rsa15/Basic256Sha256Rsa15/TripleDesSha256Rsa15" />
    </security>
    <readerQuotas maxArrayLength="Integer"
                  maxBytesPerRead="Integer"
                  maxDepth="Integer"
                  maxNameTableCharCount="Integer"
                  maxStringContentLength="Integer" />
  </binding>
</wsDualHttpBinding>

Atributy a elementy

Následující části popisují atributy, podřízené a nadřazené elementy.

Atributy

Atribut Popis
Bypassproxyonlocal Logická hodnota, která určuje, jestli se má obejít proxy server pro místní adresy. Výchozí formát je false.
clientBaseAddress Identifikátor URI, který nastaví základní adresu, které klient naslouchá zprávám odpovědí ze služby. Pokud je tato adresa zadaná, použije se k naslouchání tato adresa (plus identifikátorGUID pro jednotlivé kanály). Pokud hodnota není zadána, základní adresa klienta se vygeneruje způsobem specifickým pro přenos. Výchozí formát je null.
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 useDefaultWebProxy 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 Nastaví kódování znakové sady, které se má použít pro generování zpráv ve vazbě. Mezi platné hodnoty patří:

- BigEndianUnicode: Kódování Unicode BigEndian.
- Unicode: 16bitové kódování.
- UTF8: 8bitové kódování

Výchozí hodnota je UTF8. 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á označuje, jestli se používá automaticky nakonfigurovaný proxy server HTTP systému. Adresa proxy serveru musí být null (to znamená, že není nastavená), pokud je truetento atribut . Výchozí formát je true.

Podřízené elementy

Element Popis
<Zabezpečení> Definuje nastavení zabezpečení pro vazbu. Tento prvek je typu WSDualHttpSecurityElement.
<č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

Poskytuje WSDualHttpBinding stejnou podporu pro protokoly webové služby jako WSHttpBinding, ale pro použití s duplexní kontrakty. WSDualHttpBinding podporuje pouze zabezpečení protokolu SOAP a vyžaduje spolehlivé zasílání zpráv. Tato vazba vyžaduje, aby klient má veřejný identifikátor URI, který poskytuje koncový bod zpětného volání pro službu. To je poskytováno atributem clientBaseAddress . Duální vazba zpřístupní IP adresu klienta službě. Klient by měl použít zabezpečení, aby se zajistilo, že se připojuje pouze ke službám, kterým důvěřuje.

Tuto vazbu lze použít ke spolehlivé komunikaci prostřednictvím jednoho nebo více zprostředkovatelů SOAP.

Ve výchozím nastavení tato vazba generuje zásobník modulu runtime s WS-ReliableMessaging pro spolehlivost, WS-Security pro zabezpečení a ověřování zpráv, HTTP pro doručování zpráv a kódování zpráv text/XML.

Příklad

<configuration>
  <system.ServiceModel>
    <bindings>
      <wsDualHttpBinding>
        <binding closeTimeout="00:00:10"
                 openTimeout="00:00:20"
                 receiveTimeout="00:00:30"
                 sendTimeout="00:00:40"
                 bypassProxyOnLocal="false"
                 clientBaseAddress="http://localhost:8001/client/"
                 transactionFlow="true"
                 hostNameComparisonMode="WeakWildcard"
                 maxReceivedMessageSize="1000"
                 messageEncoding="Mtom"
                 proxyAddress="http://foo/bar"
                 textEncoding="utf-16"
                 useDefaultWebProxy="false">
          <reliableSession ordered="false"
                           inactivityTimeout="00:02:00" />
          <security mode="None">
            <message clientCredentialType="None"
                     negotiateServiceCredential="false"
                     algorithmSuite="Aes128" />
          </security>
        </binding>
      </wsDualHttpBinding>
    </bindings>
  </system.ServiceModel>
</configuration>

Viz také