<ws2007HttpBinding>

Définit une liaison interopérable qui assure la prise en charge des versions appropriées des éléments de liaison Security, ReliableSession et TransactionFlow.

<configuration>
  <system.serviceModel>
    <bindings>
      <ws2007HttpBinding>

Syntaxe

<ws2007HttpBinding>
  <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 clientCredentialType ="Certificate/IssuedToken/None/UserName/Windows"
                 negotiateServiceCredential="Boolean"
                 algorithmSuite="Basic128/Basic192/Basic256/Basic128Rsa15/Basic256Rsa15/TripleDes/TripleDesRsa15/Basic128Sha256/Basic192Sha256/TripleDesSha256/Basic128Sha256Rsa15/Basic192Sha256Rsa15/Basic256Sha256Rsa15/TripleDesSha256Rsa15"
                 establishSecurityContext="Boolean" />
    </security>
    <readerQuotas maxArrayLength="Integer"
                  maxBytesPerRead="Integer"
                  maxDepth="Integer"
                  maxNameTableCharCount="Integer"
                  maxStringContentLength="Integer" />
  </binding>
</ws2007HttpBinding>

Attributs et éléments

Les sections suivantes décrivent des attributs, des éléments enfants et des éléments parents.

Attributs

Attribut Description
allowCookies Valeur qui indique si le client accepte les cookies et les propage aux demandes suivantes. Par défaut, il s’agit de false.

Vous pouvez utiliser cette propriété lors de l'interaction avec des services Web ASP.NET (ASMX) qui utilisent des cookies. Cela garantit que les cookies retournés par le serveur sont automatiquement copiés dans toutes les futures demandes du client pour ce service.
bypassProxyOnLocal Valeur indiquant s'il faut ignorer le serveur proxy pour les adresses locales. Par défaut, il s’agit de false.
closeTimeout Valeur TimeSpan qui spécifie l'intervalle de temps prévu pour la réalisation d'une opération de fermeture. Cette valeur doit être supérieure ou égale à Zero. La valeur par défaut est 00:01:00.
hostNameComparisonMode Spécifie le mode de comparaison du nom d'hôte HTTP utilisé pour analyser des URI (Uniform Resource Identifier). Cet attribut est de type HostNameComparisonMode, ce qui indique si le nom d'hôte est utilisé pour atteindre le service en cas de correspondance sur l'URI. La valeur par défaut est StrongWildcard, qui ignore le nom d'hôte dans la correspondance.
maxBufferPoolSize Taille maximale du pool de mémoires tampons pour cette liaison. La valeur par défaut est 524 288 octets (512 × 1 024). De nombreuses parties de Windows Communication Foundation (WCF) utilisent des mémoires tampons. La création et la destruction des mémoires tampons à chaque utilisation sont chères, tout comme le processus de garbage collection. Avec les pools de mémoires tampons, vous pouvez prendre une mémoire tampon du pool, l'utiliser et la renvoyer dans le pool une fois que vous avez terminé. Ainsi, la surcharge de la création et de la destruction des mémoires tampons est évitée.
maxReceivedMessageSize Taille maximale du message (en octets), en-têtes compris, qu’un canal configuré avec cette liaison peut recevoir. L'expéditeur d'un message dépassant cette limite reçoit une erreur SOAP. Ce dernier dépose le message et crée une entrée d’événement dans le journal de suivi. La valeur par défaut est 65536.
messageEncoding Définit l'encodeur utilisé pour encoder le message. Les valeurs valides sont les suivantes :

- Text : utiliser un encodeur de message texte.
- Mtom : utiliser un encodeur Message Transmission Organization Mechanism 1.0 (MTOM).

Par défaut, il s’agit de Text.

Cet attribut est de type WSMessageEncoding.
name Nom de configuration de la liaison. Cette valeur doit être unique car elle permet d'identifier la liaison. À partir de .NET Framework 4, les liaisons et les comportements ne sont pas tenus d’avoir un nom. Pour plus d’informations sur la configuration par défaut et sur les liaisons et comportements sans nom, consultez Configuration simplifiée et Configuration simplifiée pour les services WCF.
openTimeout TimeSpan qui spécifie l'intervalle de temps prévu pour la réalisation d'une opération d'ouverture. Cette valeur doit être supérieure ou égale à Zero. La valeur par défaut est 00:01:00.
proxyAddress URI qui spécifie l'adresse du proxy HTTP. Si useSystemWebProxy est true, ce paramètre doit avoir la valeur null. Par défaut, il s’agit de null.
receiveTimeout TimeSpan qui spécifie l'intervalle de temps prévu pour la réalisation d'une opération de réception. Cette valeur doit être supérieure ou égale à Zero. La valeur par défaut est 00:01:00.
sendTimeout TimeSpan qui spécifie l'intervalle de temps prévu pour la réalisation d'une opération d'envoi. Cette valeur doit être supérieure ou égale à Zero. La valeur par défaut est 00:01:00.
textEncoding Spécifie l'encodage de jeu de caractères à utiliser pour l'émission de messages sur la liaison. Les valeurs valides sont les suivantes :

- UnicodeFffeTextEncoding : encodage Unicode Big Endian.
- Utf16TextEncoding : encodage 16 bits.
- Utf8TextEncoding : encodage 8 bits.

Par défaut, il s’agit de Utf8TextEncoding.

Cet attribut est de type Encoding.
transactionFlow Valeur indiquant si la liaison prend en charge le flux WS-Transactions. Par défaut, il s’agit de false.
useDefaultWebProxy Valeur qui spécifie si le proxy HTTP du système configuré automatiquement est utilisé. Par défaut, il s’agit de true.

Éléments enfants

Élément Description
<security> Définit les paramètres de sécurité de la liaison. Cet élément est de type WSHttpSecurityElement.
<readerQuotas> Définit les contraintes de la complexité des messages SOAP que peuvent traiter les points de terminaison configurés avec cette liaison. Cet élément est de type XmlDictionaryReaderQuotasElement.
<reliableSession> Indique si des sessions fiables sont établies entre les points de terminaison de canal.

Éléments parents

Élément Description
<bindings> Cet élément conserve une collection de liaisons standard et personnalisées.

Notes

WS2007HttpBinding ajoute une liaison fournie par le système semblable à WSHttpBinding, mais utilise les versions OASIS (Organization for the Advancement of Structured Information Standards) standard des protocoles ReliableSession, Security et TransactionFlow. Aucune modification du modèle objet ou des paramètres par défaut n’est requise en cas d’utilisation de cette liaison.

Exemple

<configuration>
  <system.ServiceModel>
    <bindings>
      <ws2007HttpBinding>
        <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://www.contoso.com"
                 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>
      </ws2007HttpBinding>
    </bindings>
  </system.ServiceModel>
</configuration>

Voir aussi