<wsHttpBinding><wsHttpBinding>

Define un enlace seguro, de confianza e interoperable, adecuado para contratos de servicio no dúplex.Defines a secure, reliable, interoperable binding suitable for non-duplex service contracts. El enlace implementa las siguientes especificaciones: WS-Reliable Messaging para confiabilidad y WS-Security para la seguridad y autenticación de mensajes.The binding implements the following specifications: WS-Reliable Messaging for reliability, and WS-Security for message security and authentication. El transporte es HTTP y la codificación del mensaje es codificación de texto/XML.The transport is HTTP, and message encoding is Text/XML encoding.

<configuration> <configuration>
   <> System. serviceModel  <system.serviceModel>
     <> de enlaces    <bindings>
       <wsHttpBinding >      <wsHttpBinding>

SintaxisSyntax

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

Atributos y elementosAttributes and Elements

En las siguientes secciones se describen los atributos, los elementos secundarios y los elementos primariosThe following sections describe attributes, child elements, and parent elements

AtributosAttributes

AtributoAttribute DESCRIPCIÓNDescription
allowCookiesallowCookies Valor de tipo booleano que indica si el cliente acepta las cookies y las propaga en solicitudes futuras.A Boolean value that indicates whether the client accepts cookies and propagates them on future requests. El valor predeterminado es false.The default is false.

Puede utilizar esta propiedad al interactuar con los servicios Web ASMX que utilizan cookies.You can use this property when you interact with ASMX Web services that use cookies. De esta manera, puede estar seguro de que las cookies devueltas del servidor se copian automáticamente en todas las solicitudes de cliente futuras para ese servicio.In this way, you can be sure that the cookies returned from the server are automatically copied to all future client requests for that service.
bypassProxyOnLocalbypassProxyOnLocal Valor de tipo booleano que indica si se omitirá el servidor proxy para las direcciones locales.A Boolean value that indicates whether to bypass the proxy server for local addresses. El valor predeterminado es false.The default is false.
closeTimeoutcloseTimeout Un valor TimeSpan que especifica el intervalo de tiempo del que dispone una operación de cierre para completarse.A TimeSpan value that specifies the interval of time provided for a close operation to complete. Este valor debe ser mayor o igual que Zero.This value should be greater than or equal to Zero. El valor predeterminado es 00:01:00.The default is 00:01:00.
hostnameComparisonModehostnameComparisonMode Especifica el modo de comparación de nombres de host HTTP usado para analizar los URI.Specifies the HTTP hostname comparison mode used to parse URIs. Este atributo es del tipo HostNameComparisonMode, que indica si se va a utilizar el nombre del host para llegar al servicio cuando coincida en el URI.This attribute is of type HostNameComparisonMode, which indicates whether the hostname is used to reach the service when matching on the URI. El valor predeterminado es StrongWildcard, que omite el nombre del host en la coincidencia.The default value is StrongWildcard, which ignores the hostname in the match.
maxBufferPoolSizemaxBufferPoolSize Entero que especifica el tamaño máximo del grupo de búferes para este enlace.An integer that specifies the maximum buffer pool size for this binding. El valor predeterminado es 524.288 bytes (512x1024).The default is 524,288 bytes (512 * 1024). En muchas partes de Windows Communication Foundation (WCF) se utilizan búferes.Many parts of Windows Communication Foundation (WCF) use buffers. Crear y destruir búferes cada vez que se usan es caro, y la recolección de elementos no utilizados para los búferes también es cara.Creating and destroying buffers each time they are used is expensive, and garbage collection for buffers is also expensive. Con grupos de búferes, puede tomar un búfer del grupo, usarlo y devolverlo al grupo una vez haya terminado.With buffer pools, you can take a buffer from the pool, use it, and return it to the pool once you are done. Así se evita la sobrecarga al crear y destruir búferes.Thus the overhead in creating and destroying buffers is avoided.
maxReceivedMessageSizemaxReceivedMessageSize Entero positivo que especifica el tamaño máximo del mensaje, en bytes, incluidos los encabezados, que se puede recibir en un canal configurado con este enlace.A positive integer that specifies the maximum message size, in bytes, including headers, that can be received on a channel configured with this binding. El remitente de un mensaje que supere este límite recibirá un error SOAP.The sender of a message exceeding this limit will receive a SOAP fault. El destinatario quita el mensaje y crea una entrada del evento en el registro de seguimiento.The receiver drops the message and creates an entry of the event in the trace log. El valor predeterminado es 65536.The default is 65536.
messageEncodingmessageEncoding Define el codificador utilizado para codificar el mensaje.Defines the encoder used to encode the message. Los valores válidos son los siguientes:Valid values include the following:

Negrita Use un codificador de mensajes de texto.- Text: Use a text message encoder.
MTOM Use un codificador del mecanismo de la organización de transmisión de mensajes 1,0 (MTOM).- Mtom: Use a Message Transmission Organization Mechanism 1.0 (MTOM) encoder.
-El valor predeterminado es texto.- The default is Text.

Este atributo es del tipo WSMessageEncoding.This attribute is of type WSMessageEncoding.
namename Cadena que contiene el nombre de configuración del enlace.A string that contains the configuration name of the binding. Este valor debe ser único porque se usa como identificación del enlace.This value should be unique because it is used as an identification for the binding. A partir de .NET Framework 4.NET Framework 4, no es necesario que los enlaces y los comportamientos tengan nombre.Starting with .NET Framework 4.NET Framework 4, bindings and behaviors are not required to have a name. Para obtener más información sobre la configuración predeterminada y los enlaces y comportamientos sin nombre, vea configuración simplificada y configuración simplificada para servicios WCF.For more information about default configuration and nameless bindings and behaviors, see Simplified Configuration and Simplified Configuration for WCF Services.
openTimeoutopenTimeout Valor de la estructura TimeSpan que especifica el intervalo de tiempo del que dispone una operación de apertura para completarse.A TimeSpan value that specifies the interval of time provided for an open operation to complete. Este valor debe ser mayor o igual que Zero.This value should be greater than or equal to Zero. El valor predeterminado es 00:01:00.The default is 00:01:00.
proxyAddressproxyAddress Un URI que especifica la dirección del proxy HTTP.A URI that specifies the address of the HTTP proxy. Si useSystemWebProxy es true, este valor debe ser null.If useSystemWebProxy is true, this setting must be null. El valor predeterminado es null.The default is null.
receiveTimeoutreceiveTimeout Un valor TimeSpan que especifica el intervalo de tiempo del que dispone una operación de recepción para completarse.A TimeSpan value that specifies the interval of time provided for a receive operation to complete. Este valor debe ser mayor o igual que Zero.This value should be greater than or equal to Zero. El valor predeterminado es 00:01:00.The default is 00:01:00.
sendTimeoutsendTimeout Un valor TimeSpan que especifica el intervalo de tiempo del que dispone una operación de envío para completarse.A TimeSpan value that specifies the interval of time provided for a send operation to complete. Este valor debe ser mayor o igual que Zero.This value should be greater than or equal to Zero. El valor predeterminado es 00:01:00.The default is 00:01:00.
textEncodingtextEncoding Especifica el codificador del juego de caracteres que se va a usar para emitir los mensajes en el enlace.Specifies the character set encoding to be used for emitting messages on the binding. Los valores válidos son los siguientes:Valid values include the following:

UnicodeFffeTextEncoding Codificación Unicode BigEndian.- UnicodeFffeTextEncoding: Unicode BigEndian encoding.
Utf16TextEncoding codificación de 16 bits.- Utf16TextEncoding: 16-bit encoding.
Utf8TextEncoding codificación de 8 bits.- Utf8TextEncoding: 8-bit encoding.

El valor predeterminado es Utf8TextEncoding.The default is Utf8TextEncoding.

Este atributo es del tipo Encoding.This attribute is of type Encoding.
transactionFlowtransactionFlow Valor booleano que especifica si el enlace admite las transacciones WS del flujo.A Boolean value that specifies whether the binding supports flowing WS-Transactions. El valor predeterminado es false.The default is false.
useDefaultWebProxyuseDefaultWebProxy Valor de tipo booleano que especifica si se utiliza el proxy HTTP del sistema configurado automáticamente.A Boolean value that specifies whether the system’s auto-configured HTTP proxy is used. El valor predeterminado es true.The default is true.

Elementos secundariosChild Elements

ElementoElement DESCRIPCIÓNDescription
<security><security> Define la configuración de seguridad del enlace.Defines the security settings for the binding. Este elemento es del tipo WSHttpSecurityElement.This element is of type WSHttpSecurityElement.
<readerQuotas><readerQuotas> Define las restricciones en la complejidad de los mensajes SOAP que pueden ser procesados por los puntos de conexión configurados con este enlace.Defines the constraints on the complexity of SOAP messages that can be processed by endpoints configured with this binding. Este elemento es del tipo XmlDictionaryReaderQuotasElement.This element is of type XmlDictionaryReaderQuotasElement.
<reliableSession><reliableSession> Especifica si se establecen sesiones confiables entre los puntos de conexión del canal.Specifies if reliable sessions are established between channel endpoints.

Elementos primariosParent Elements

ElementoElement DESCRIPCIÓNDescription
<bindings><bindings> Este elemento contiene una colección de enlaces estándar y personalizados.This element holds a collection of standard and custom bindings.

ComentariosRemarks

La clase WSHttpBinding es similar a la clase BasicHttpBinding pero proporciona más características de servicios Web.The WSHttpBinding is similar to the BasicHttpBinding but provides more Web service features. Utiliza el transporte HTTP y proporciona seguridad para mensajes, como BasicHttpBinding, pero también proporciona transacciones, mensajería confiable y WS-Addressing, habilitada de forma predeterminada o disponible mediante un valor de control único.It uses the HTTP transport and provides message security, as does BasicHttpBinding, but it also provides transactions, reliable messaging, and WS-Addressing, either enabled by default or available through a single control setting.

EjemploExample

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

Vea tambiénSee also