Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Définit une liaison sécurisée, fiable et interopérable adaptée aux contrats de service non duplex. La liaison implémente les spécifications suivantes : WS-Reliable Messaging pour la fiabilité et WS-Security pour la sécurité et l’authentification des messages. Le transport est HTTP, et l’encodage de message est l’encodage Text/XML.
<Configuration>
<system.serviceModel>
<Liaisons>
<wsHttpBinding>
Syntaxe
<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>
Attributs et éléments
Les sections suivantes décrivent les attributs, les éléments enfants et les éléments parents
Attributes
| Caractéristique | Descriptif |
|---|---|
| allowCookies | Valeur booléenne qui indique si le client accepte les cookies et les propage sur les demandes futures. La valeur par défaut est false. Vous pouvez utiliser cette propriété lorsque vous interagissez avec les services Web ASMX qui utilisent des cookies. De cette façon, vous pouvez vous assurer que les cookies retournés par le serveur sont automatiquement copiés vers toutes les futures demandes clientes pour ce service. |
| bypassProxyOnLocal | Valeur booléenne qui indique s’il faut contourner le serveur proxy pour les adresses locales. La valeur par défaut est false. |
| closeTimeout | Valeur TimeSpan qui spécifie l’intervalle de temps fourni pour qu’une opération de fermeture se termine. 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 de noms d’hôte HTTP utilisé pour analyser les URI. Cet attribut est de type HostNameComparisonMode, qui indique si le nom d’hôte est utilisé pour atteindre le service lors de la correspondance sur l’URI. La valeur par défaut est StrongWildcard, qui ignore le nom d’hôte dans la correspondance. |
| maxBufferPoolSize | Entier qui spécifie la taille maximale du pool de mémoires tampons pour cette liaison. La valeur par défaut est 524 288 octets (512 * 1024). De nombreuses parties de Windows Communication Foundation (WCF) utilisent des mémoires tampons. La création et la destruction de mémoires tampons chaque fois qu’elles sont utilisées est coûteuse et le garbage collection pour les mémoires tampons est également coûteux. Avec les pools de mémoires tampons, vous pouvez prendre une mémoire tampon à partir du pool, l’utiliser et la retourner au pool une fois que vous avez terminé. Ainsi, la surcharge dans la création et la destruction de mémoires tampons est évitée. |
| maxReceivedMessageSize | Entier positif qui spécifie la taille maximale du message, en octets, y compris les en-têtes, qui peuvent être reçus sur un canal configuré avec cette liaison. L’expéditeur d’un message dépassant cette limite reçoit une erreur SOAP. Le destinataire supprime le message et crée une entrée de l’événement dans le journal des traces. La valeur par défaut est 65536. |
| messageEncoding | Définit l’encodeur utilisé pour encoder le message. Les valeurs valides sont les suivantes : - Texte : utilisez un encodeur de message texte. - Mtom : Utilisez un encodeur MTOM (Message Transmission Organization Mechanism) 1.0 (MTOM). - La valeur par défaut est Text. Cet attribut est de type WSMessageEncoding. |
| nom | Chaîne qui contient le nom de configuration de la liaison. Cette valeur doit être unique, car elle est utilisée comme identification pour la liaison. À compter de .NET Framework 4, les liaisons et les comportements ne sont pas nécessaires pour avoir un nom. Pour plus d’informations sur la configuration par défaut et les liaisons sans nom et les comportements, consultez Configuration simplifiée et Configuration simplifiée pour les services WCF. |
| openTimeout | Valeur TimeSpan qui spécifie l’intervalle de temps fourni pour qu’une opération ouverte se termine. 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 c’est truele cas, ce paramètre doit être null. La valeur par défaut est null. |
| receiveTimeout | Valeur TimeSpan qui spécifie l’intervalle de temps fourni pour qu’une opération de réception se termine. Cette valeur doit être supérieure ou égale à Zero. La valeur par défaut est 00:01:00. |
| sendTimeout | Valeur TimeSpan qui spécifie l’intervalle de temps fourni pour qu’une opération d’envoi se termine. Cette valeur doit être supérieure ou égale à Zero. La valeur par défaut est 00:01:00. |
| textEncoding | Spécifie l’encodage du jeu de caractères à utiliser pour émettre des messages sur la liaison. Les valeurs valides sont les suivantes : - UnicodeFffeTextEncoding : encodage BigEndian Unicode. - Utf16TextEncoding : encodage 16 bits. - Utf8TextEncoding : encodage 8 bits. La valeur par défaut est Utf8TextEncoding. Cet attribut est de type Encoding. |
| transactionFlow | Valeur booléenne qui spécifie si la liaison prend en charge le flux WS-Transactions. La valeur par défaut est false. |
| useDefaultWebProxy | Valeur booléenne qui spécifie si le proxy HTTP configuré automatiquement par le système est utilisé. La valeur par défaut est true. |
Éléments enfants
| Élément | Descriptif |
|---|---|
| <sécurité> | Définit les paramètres de sécurité de la liaison. Cet élément est de type WSHttpSecurityElement. |
| <readerQuotas> | Définit les contraintes relatives à la complexité des messages SOAP qui peuvent être traités par les points de terminaison configurés avec cette liaison. Cet élément est de type XmlDictionaryReaderQuotasElement. |
| <reliableSession> | Spécifie si des sessions fiables sont établies entre les points de terminaison de canal. |
Éléments parents
| Élément | Descriptif |
|---|---|
| <Liaisons> | Cet élément contient une collection de liaisons standard et personnalisées. |
Remarques
La WSHttpBinding fonctionnalité est similaire à celle du BasicHttpBinding service Web, mais fournit d’autres fonctionnalités de service Web. Il utilise le transport HTTP et assure la sécurité des messages, comme BasicHttpBinding, mais fournit également des transactions, une messagerie fiable et l’adressage WS, activés par défaut ou disponibles via un seul paramètre de contrôle.
Example
<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>