<webHttpBinding>

Define um elemento de enlace que é utilizado para configurar pontos finais para serviços Web windows Communication Foundation (WCF) que respondem a pedidos HTTP em vez de mensagens SOAP.

<configuração>
  <system.serviceModel>
    <enlaces>
      <webHttpBinding>

Sintaxe

<webHttpBinding>
  <binding allowCookies="Boolean"
           bypassProxyOnLocal="Boolean"
           closeTimeout="TimeSpan"
           hostNameComparisonMode="StrongWildCard/Exact/WeakWildcard"
           maxBufferPoolSize="integer"
           maxBufferSize="integer"
           maxReceivedMessageSize="Integer"
           name="string"
           openTimeout="TimeSpan"
           proxyAddress="URI"
           receiveTimeout="TimeSpan"
           sendTimeout="TimeSpan"
           transferMode="Buffered/Streamed/StreamedRequest/StreamedResponse"
           useDefaultWebProxy="Boolean"
           writeEncoding="UnicodeFffeTextEncoding/Utf16TextEncoding/Utf8TextEncoding">
    <security mode="None/Transport/TransportCredentialOnly">
      <transport clientCredentialType="Basic/Certificate/Digest/None/Ntlm/Windows"
                 proxyCredentialType="Basic/Digest/None/Ntlm/Windows"
                 realm="string" />
    </security>
    <readerQuotas maxArrayLength="Integer"
                  maxBytesPerRead="Integer"
                  maxDepth="Integer"
                  maxNameTableCharCount="Integer"
                  maxStringContentLength="Integer" />
  </binding>
</webHttpBinding>

Atributos e Elementos

As secções seguintes descrevem atributos, elementos subordinados e elementos principais

Atributos

Atributo Descrição
allowCookies Um valor booleano que indica se o cliente aceita cookies e os propaga em pedidos futuros. A predefinição é falsa.

Pode utilizar esta propriedade quando interage com serviços Web ASMX que utilizam cookies. Desta forma, pode certificar-se de que os cookies devolvidos a partir do servidor são automaticamente copiados para todos os futuros pedidos de cliente para esse serviço.
bypassProxyOnLocal Um valor booleano que indica se deve ignorar o servidor proxy para endereços locais. A predefinição é false.
closeTimeout Um TimeSpan valor que especifica o intervalo de tempo fornecido para a conclusão de uma operação próxima. Este valor deve ser maior ou igual a Zero. A predefinição é 00:01:00.
hostnameComparisonMode Especifica o modo de comparação de nome de anfitrião HTTP utilizado para analisar URIs. Este atributo é do tipo HostNameComparisonMode, que indica se o nome do anfitrião é utilizado para aceder ao serviço quando corresponde ao URI. O valor predefinido é StrongWildcard, que ignora o nome do anfitrião na correspondência.
maxBufferPoolSize Um número inteiro que especifica o tamanho máximo do conjunto de memória intermédia para este enlace. A predefinição é 524.288 bytes (512 * 1024). Muitas partes do Windows Communication Foundation (WCF) utilizam memórias intermédias. A criação e destruição de memórias intermédias sempre que são utilizadas é dispendiosa e a recolha de lixo para memória intermédia também é dispendiosa. Com os conjuntos de memória intermédia, pode tirar uma memória intermédia do conjunto, utilizá-la e devolvê-la ao conjunto assim que terminar. Assim, evita-se a sobrecarga na criação e destruição de memórias intermédias.
maxBufferSize Um número inteiro que especifica a quantidade máxima de memória que é alocada para utilização pelo gestor das memórias intermédias de mensagens que recebem mensagens do canal. O valor predefinido é 524.288 bytes (0x80000).
maxReceivedMessageSize Um número inteiro positivo que especifica o tamanho máximo da mensagem, em bytes, incluindo cabeçalhos, que podem ser recebidos num canal configurado com este enlace. O remetente de uma mensagem que exceda este limite receberá uma falha. O recetor remove a mensagem e cria uma entrada do evento no registo de rastreio. A predefinição é 65536. Nota: Aumentar este valor por si só não é suficiente no modo compatível ASP.NET. Também deve aumentar o valor de httpRuntime (consulte httpRuntime Element (ASP.NET Settings Schema)).
name Uma cadeia que contém o nome de configuração do enlace. Este valor deve ser exclusivo porque é utilizado como uma identificação para o enlace. A partir do .NET Framework 4, não são necessários enlaces e comportamentos para ter um nome. Para obter mais informações sobre a configuração predefinida e os enlaces e comportamentos sem nome, veja Configuração Simplificada e Configuração Simplificada para os Serviços WCF.
openTimeout Um TimeSpan valor que especifica o intervalo de tempo fornecido para a conclusão de uma operação aberta. Este valor deve ser maior ou igual a Zero. A predefinição é 00:01:00.
proxyAddress Um URI que especifica o endereço do proxy HTTP. Se useSystemWebProxy for true, esta definição tem de ser null. A predefinição é null.
receiveTimeout Um TimeSpan valor que especifica o intervalo de tempo fornecido para a conclusão de uma operação de receção. Este valor deve ser maior ou igual a Zero. A predefinição é 00:01:00.
sendTimeout Um TimeSpan valor que especifica o intervalo de tempo fornecido para a conclusão de uma operação de envio. Este valor deve ser maior ou igual a Zero. A predefinição é 00:01:00.
transferMode. Um TransferMode valor que indica se o serviço configurado com o enlace utiliza modos de transferência de mensagens transmitidos em fluxo ou em memória intermédia (ou ambos). A predefinição é Buffered.
useDefaultWebProxy Um valor booleano que especifica se o proxy HTTP configurado automaticamente do sistema é utilizado. A predefinição é true.
writeEncoding Especifica a codificação de carateres que é utilizada para o texto da mensagem. Os valores válidos incluem o seguinte:

UnicodeFffeTextEncoding: codificação Unicode BigEndian.

Utf16TextEncoding: codificação de 16 bits.

Utf8TextEncoding: codificação de 8 bits.

A predefinição é Utf8TextEncoding.

Elementos Subordinados

Elemento Descrição
<readerQuotas> Define as restrições sobre a complexidade das mensagens POX que podem ser processadas por pontos finais configurados com este enlace. Este elemento é do tipo XmlDictionaryReaderQuotasElement.
<segurança> Define as definições de segurança do enlace. Este elemento é do tipo WebHttpSecurityElement.

Elementos Principais

Elemento Descrição
<enlaces> Este elemento contém uma coleção de enlaces padrão e personalizados.

Observações

O Modelo de Programação Web wcF permite que os programadores exponham serviços Web WCF através de pedidos HTTP que utilizam mensagens de estilo "XML antigo simples" (POX) em vez de mensagens baseadas em SOAP. Para que os clientes comuniquem com um serviço através de pedidos HTTP, um ponto final do serviço tem de ser configurado com a <WebHttpBinding> que tem a <WebHttpBehavior> anexada ao mesmo.

Suporte no WCF para sindicalização e ASP. A integração do AJAX baseia-se no Modelo de Programação Web. Para obter mais informações sobre o modelo, veja Modelo de Programação HTTP Web WCF.

Ver também