Delen via


<wsHttpBinding>

Definieert een veilige, betrouwbare, interoperabele binding die geschikt is voor niet-duplex servicecontracten. De binding implementeert de volgende specificaties: WS-Reliable Messaging voor betrouwbaarheid en WS-Security voor berichtbeveiliging en verificatie. Het transport is HTTP en berichtcodering is Tekst-/XML-codering.

<Configuratie>
  <system.serviceModel>
    <Bindings>
      <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>

Kenmerken en elementen

In de volgende secties worden kenmerken, onderliggende elementen en bovenliggende elementen beschreven

Kenmerken

Kenmerk Beschrijving
allowCookies Een Booleaanse waarde die aangeeft of de client cookies accepteert en doorgeeft bij toekomstige aanvragen. De standaardwaarde is false.

U kunt deze eigenschap gebruiken wanneer u communiceert met ASMX-webservices die gebruikmaken van cookies. Op deze manier kunt u er zeker van zijn dat de cookies die van de server worden geretourneerd, automatisch worden gekopieerd naar alle toekomstige clientaanvragen voor die service.
bypassProxyOnLocal Een Booleaanse waarde die aangeeft of de proxyserver voor lokale adressen moet worden overgeslagen. De standaardwaarde is false.
closeTimeout Een TimeSpan waarde die het tijdsinterval aangeeft dat is opgegeven voor het voltooien van een bijna-bewerking. Deze waarde moet groter zijn dan of gelijk zijn aan Zero. De standaardwaarde is 00:01:00.
hostnaamComparisonMode Hiermee geeft u de http-hostnaamvergelijkingsmodus op die wordt gebruikt voor het parseren van URI's. Dit kenmerk is van het type HostNameComparisonMode, waarmee wordt aangegeven of de hostnaam wordt gebruikt om de service te bereiken bij het vergelijken op de URI. De standaardwaarde is StrongWildcard, waarbij de hostnaam in de overeenkomst wordt genegeerd.
maxBufferPoolSize Een geheel getal dat de maximale grootte van de buffergroep voor deze binding aangeeft. De standaardwaarde is 524.288 bytes (512 * 1024). Veel onderdelen van Windows Communication Foundation (WCF) maken gebruik van buffers. Het maken en vernietigen van buffers elke keer dat ze worden gebruikt, is duur en garbagecollection voor buffers is ook duur. Met bufferpools kunt u een buffer uit de pool nemen, deze gebruiken en teruggaan naar de pool zodra u klaar bent. Zo wordt de overhead bij het maken en vernietigen van buffers vermeden.
maxReceivedMessageSize Een positief geheel getal dat de maximale berichtgrootte aangeeft, in bytes, inclusief headers, die kunnen worden ontvangen op een kanaal dat is geconfigureerd met deze binding. De afzender van een bericht dat deze limiet overschrijdt, ontvangt een SOAP-fout. De ontvanger verwijdert het bericht en maakt een vermelding van de gebeurtenis in het traceringslogboek. De standaardwaarde is 65536.
messageEncoding Hiermee definieert u de encoder die wordt gebruikt om het bericht te coderen. Geldige waarden zijn onder andere:

- Tekst: gebruik een tekstberichtcoderingsprogramma.
- Mtom: gebruik een Message Transmission Organization Mechanism 1.0-encoder (MTOM).
- De standaardwaarde is Tekst.

Dit kenmerk is van het type WSMessageEncoding.
naam Een tekenreeks die de configuratienaam van de binding bevat. Deze waarde moet uniek zijn omdat deze wordt gebruikt als identificatie voor de binding. Vanaf .NET Framework 4 hoeven bindingen en gedrag geen naam te hebben. Zie Vereenvoudigde configuratie en vereenvoudigde configuratie voor WCF-services voor meer informatie over standaardconfiguratie en naamloze bindingen en gedrag.
openTimeout Een TimeSpan waarde die het tijdsinterval aangeeft dat is opgegeven voor het voltooien van een open bewerking. Deze waarde moet groter zijn dan of gelijk zijn aan Zero. De standaardwaarde is 00:01:00.
proxyAddress Een URI die het adres van de HTTP-proxy aangeeft. Als useSystemWebProxy is true, moet deze instelling zijn null. De standaardwaarde is null.
receiveTimeout Een TimeSpan waarde die het tijdsinterval aangeeft dat is opgegeven voor het voltooien van een ontvangstbewerking. Deze waarde moet groter zijn dan of gelijk zijn aan Zero. De standaardwaarde is 00:01:00.
sendTimeout Een TimeSpan waarde die het tijdsinterval aangeeft dat is opgegeven voor het voltooien van een verzendbewerking. Deze waarde moet groter zijn dan of gelijk zijn aan Zero. De standaardwaarde is 00:01:00.
Textencoding Hiermee geeft u de tekensetcodering die moet worden gebruikt voor het verzenden van berichten op de binding. Geldige waarden zijn onder andere:

- UnicodeFffeTextEncoding: Unicode BigEndian-codering.
- Utf16TextEncoding: 16-bits codering.
- Utf8TextEncoding: 8-bits codering.

De standaardwaarde is Utf8TextEncoding.

Dit kenmerk is van het type Encoding.
transactionFlow Een Booleaanse waarde die aangeeft of de binding stromende WS-transacties ondersteunt. De standaardwaarde is false.
useDefaultWebProxy Een Booleaanse waarde die aangeeft of de automatisch geconfigureerde HTTP-proxy van het systeem wordt gebruikt. De standaardwaarde is true.

Onderliggende elementen

Element Beschrijving
<Veiligheid> Definieert de beveiligingsinstellingen voor de binding. Dit element is van het type WSHttpSecurityElement.
<readerQuotas> Definieert de beperkingen voor de complexiteit van SOAP-berichten die kunnen worden verwerkt door eindpunten die met deze binding zijn geconfigureerd. Dit element is van het type XmlDictionaryReaderQuotasElement.
<reliableSession> Hiermee geeft u op of er betrouwbare sessies tot stand worden gebracht tussen kanaaleindpunten.

Bovenliggende elementen

Element Beschrijving
<Bindings> Dit element bevat een verzameling standaard- en aangepaste bindingen.

Opmerkingen

De WSHttpBinding is vergelijkbaar met de BasicHttpBinding , maar biedt meer webservicefuncties. Het maakt gebruik van het HTTP-transport en biedt berichtbeveiliging, net als BasicHttpBinding, maar het biedt ook transacties, betrouwbare berichten en WS-addressing, standaard ingeschakeld of beschikbaar via één besturingsinstelling.

Voorbeeld

<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>

Zie ook