Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Permite que codificações de mensagens JSON (JavaScript Object Notation) e conteúdo binário "bruto" sejam lidas e gravadas quando usadas em uma associação WCF (Windows Communication Foundation).
<configuration>
<system.serviceModel>
<bindings>
<customBinding>
<binding>
<webMessageEncoding>
Sintaxe
<webMessageEncoding maxReadPoolSize="Integer"
maxWritePoolSize="Integer"
writeEncoding="UnicodeFffeTextEncoding/Utf16TextEncoding/Utf8TextEncoding" />
Atributos e elementos
As seções a seguir descrevem atributos, elementos filho e elementos pai.
Attributes
| Attribute | Description |
|---|---|
maxReadPoolSize |
A quantidade de mensagens que podem ser lidas simultaneamente sem alocar novos leitores. Tamanhos de pool maiores tornam o sistema mais tolerante aos picos de atividade ao custo de um conjunto de trabalho maior. O padrão é 64 leitores para cada um dos codificadores internos (texto, JSON e "bruto"). Aumentar esse número aumenta o consumo de memória, mas prepara o codificador para lidar com picos repentinos de mensagens de entrada, pois ele é capaz de usar leitores do pool que já foram criados em vez de criar novos. |
maxWritePoolSize |
A quantidade de mensagens que podem ser enviadas simultaneamente sem alocar novos gravadores. Tamanhos de pool maiores tornam o sistema mais tolerante aos picos de atividade ao custo de um conjunto de trabalho maior. O padrão é 16 gravadores para cada um dos codificadores internos (texto, JSON e "bruto"). Aumentar esse número aumenta o consumo de memória, mas prepara o codificador para lidar com explosões repentinas de mensagens de saída porque é capaz de usar gravadores do pool que já foram criados em vez de criar novos. |
writeEncoding |
Especifica a codificação do conjunto de caracteres a ser usada para emitir mensagens na associação. Os valores válidos são: - UnicodeFffeTextEncoding: codificação Unicode Big Endian. - Utf16TextEncoding: codificação Unicode. - Utf8TextEncoding: codificação de 8 bits. O padrão é Utf8TextEncoding. Esse atributo é do tipo Encoding. |
Elementos filho
| Elemento | Description |
|---|---|
| <Readerquotas> | Define as restrições sobre a complexidade das mensagens SOAP que podem ser processadas por pontos de extremidade configurados com essa associação. Esse elemento é do tipo XmlDictionaryReaderQuotasElement. |
Elementos pai
| Elemento | Description |
|---|---|
| <ligação> | Define todos os recursos de associação da associação personalizada. |
Observações
A codificação é o processo de transformação de uma mensagem em uma sequência de bytes. A decodificação é o processo inverso. Esses processos exigem a especificação de uma codificação de caracteres.
O webMessageEncoding elemento funciona delegando a uma série de codificadores internos para lidar com as codificações XML e JSON de texto sem formatação e dados binários "brutos". Essa delegação é feita por um codificador de mensagens compostas.
Esse elemento de associação e seu codificador composto são usados para controlar a codificação em cenários que não usam mensagens SOAP usadas pelo webHttpBinding elemento. Esses cenários incluem "XML Antigo Simples" (POX), Rest (Transferência de Estado Representacional), RSS (Sindicalização Muito Simples) e Sindicalização Atom e JavaScript e XML Assíncronos (AJAX). O codificador de mensagens compostas não dá suporte a SOAP ou WS-Addressing.
O elemento de associação pode ser configurado com uma codificação de caractere de gravação usando o writeEncoding atributo. O valor fornecido Encoding especifica o comportamento na gravação para os casos XML JSON e Textual. Ao ler, qualquer codificação de mensagem válida e codificação de texto é compreendida.
maxReadPoolSize e maxWritePoolSize também pode ser usado para definir o número máximo de leitores e gravadores a serem alocados, respectivamente. Por padrão, 64 leitores e 16 gravadores são alocados.
Restrições de complexidade padrão também são definidas usando o <elemento readerQuotas> para proteger contra uma classe de ataques de DOS (negação de serviço) que tentam usar a complexidade da mensagem para vincular recursos de processamento de ponto de extremidade.
Example
<webMessageEncoding maxReadPoolSize="256"
maxWritePoolSize="128"
messageVersion="None"
textEncoding="utf-8" />