<associazioneHttpWs>
Definisce un'associazione protetta, affidabile, interoperabile adatta per contratti di servizio non duplex. L'associazione implementa le specifiche seguenti: WS-ReliableMessaging per l'affidabilità e WS-Security per la sicurezza e l'autenticazione dei messaggi. Il trasporto è HTTP e la codifica dei messaggi è Text/XML.
Gerarchia dello schema
<system.serviceModel>
<bindings>
<associazioneHttpWs>
Sintassi
<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>
Attributi ed elementi
Nelle sezioni seguenti vengono descritti attributi, elementi figlio ed elementi padre.
Attributi
Attributo | Descrizione |
---|---|
allowCookies |
Valore booleano che indica se il client accetta cookie e li propaga alle richieste future. Il valore predefinito è false. È possibile utilizzare questa proprietà quando si interagisce con servizi Web ASMX che utilizzano cookie. In tal modo i cookie restituiti dal server vengono copiati automaticamente in tutte le richieste client future per quel servizio. |
bypassProxyOnLocal |
Valore booleano che indica se ignorare il server proxy per indirizzi locali. Il valore predefinito è false. |
closeTimeout |
Valore TimeSpan che specifica l'intervallo di tempo fornito per il completamento di un'operazione di chiusura. Questo valore deve essere maggiore o uguale a Zero. L'impostazione predefinita è 00:01:00. |
hostnameComparisonMode |
Specifica la modalità di confronto del nome host HTTP utilizzata per analizzare gli URI. Questo attributo è di tipo HostnameComparisonMode, il quale indica se il nome host viene utilizzato per raggiungere il servizio in caso di corrispondenza dell'URI. Il valore predefinito è StrongWildcard, che ignora il nome host nella corrispondenza. |
maxBufferPoolSize |
Numero intero che specifica la dimensione del pool di buffer massima per questa associazione. Il valore predefinito è 524.288 byte (512 * 1024). Molte parti di Windows Communication Foundation (WCF) utilizzano buffer. La creazione e l'eliminazione dei buffer a ogni loro utilizzo sono operazioni onerose, come anche le procedure di Garbage Collection dei buffer. Quando si utilizza un pool di buffer è possibile prelevare un buffer dal pool, utilizzarlo e, al termine delle operazioni, riporlo nel pool. In questo modo è possibile evitare il sovraccarico dovuto alla creazione e all'eliminazione dei buffer. |
maxReceivedMessageSize |
Integer positivo che specifica la dimensione massima del messaggio, incluse le intestazioni, che è possibile ricevere su un canale configurato con questa associazione. Il mittente di un messaggio che supera questo limite riceverà un errore SOAP. Il destinatario elimina il messaggio e crea una voce dell'evento nel registro di traccia. Il valore predefinito è 65536. |
messageEncoding |
Definisce il codificatore utilizzato per codificare il messaggio. Di seguito vengono elencati i valori validi:
L'attributo è di tipo WSMessageEncoding. |
name |
Stringa che contiene il nome della configurazione dell'associazione. Questo valore deve essere univoco perché viene utilizzato per identificare l'associazione. A partire da .NET Framework 4, non è necessario che le associazioni e i comportamenti dispongano di un nome. Per ulteriori informazioni sulla configurazione predefinita e le associazioni e i comportamenti senza nome, vedere Simplified Configuration e Simplified Configuration for WCF Services. |
openTimeout |
Valore TimeSpan che specifica l'intervallo di tempo fornito per il completamento di un'operazione di apertura. Questo valore deve essere maggiore o uguale a Zero. L'impostazione predefinita è 00:01:00. |
proxyAddress |
URI che specifica l'indirizzo del proxy HTTP. Se useSystemWebProxy è true, questa impostazione deve essere null. Il valore predefinito è null. |
receiveTimeout |
Valore TimeSpan che specifica l'intervallo di tempo fornito per il completamento di un'operazione di ricezione. Questo valore deve essere maggiore o uguale a Zero. L'impostazione predefinita è 00:01:00. |
sendTimeout |
Valore TimeSpan che specifica l'intervallo di tempo fornito per il completamento di un'operazione di invio. Questo valore deve essere maggiore o uguale a Zero. L'impostazione predefinita è 00:01:00. |
textEncoding |
Specifica la codifica del set di caratteri da utilizzare per l'emissione dei messaggi sull'associazione. Di seguito vengono elencati i valori validi:
L'impostazione predefinita è Utf8TextEncoding. L'attributo è di tipo Encoding. |
transactionFlow |
Valore booleano che specifica se l'associazione supporta la propagazione di WS-Transactions. Il valore predefinito è false. |
useDefaultWebProxy |
Valore booleano che specifica se viene utilizzato il proxy HTTP di sistema configurato automaticamente. Il valore predefinito è true. |
Elementi figlio
Elemento | Descrizione |
---|---|
Definisce le impostazioni di sicurezza per l'associazione. L'elemento è di tipo WSHttpSecurityElement. |
|
Definisce i vincoli sulla complessità dei messaggi SOAP che possono essere elaborati dagli endpoint configurati con questa associazione. L'elemento è di tipo XmlDictionaryReaderQuotasElement. |
|
Specifica se vengono stabilite sessioni affidabili tra endpoint del canale. |
Elementi padre
Elemento | Descrizione |
---|---|
Questo elemento contiene una raccolta di associazioni standard e personalizzate. |
Osservazioni
WSHttpBinding è simile a BasicHttpBinding ma fornisce più funzionalità del servizio Web. Utilizza il trasporto HTTP e fornisce sicurezza dei messaggi, in modo analogo a BasicHttpBinding, ma offre inoltre funzionalità per transazioni, messaggistica affidabile e WS-Addressing, attivate per impostazione predefinita o disponibili tramite l'impostazione di un singolo controllo.
Esempio
<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>
Vedere anche
Riferimento
WSHttpBinding
WSHttpBindingElement
Concetti
Altre risorse
Windows Communication Foundation Bindings
Configuring System-Provided Bindings
Using Bindings to Configure Services and Clients