Compactação/Descompactação com a Atividade Postar Solicitação de HTTP

Durante o tempo de execução, a atividade Postar Solicitação de HTTP envia uma solicitação de HTTP compatível com o protocolo HTTP/HTTPS 1.1 para o Servidor HTTP.

Nota: A atividade Postar Solicitação de HTTP suporta a compactação/descompactação com o gzip ou os formatos deflate. Ela não suporta o formato de compactação do arquivo UNIX comum chamado compress.

O comportamento de tempo de execução da compactação/descompactação da atividade Postar Solicitação de HTTP é dependente das condições a seguir:

O efeito para estas condições no comportamento de tempo de execução de compactação/descompactação da atividade Postar Solicitação de HTTP é descrito abaixo e nas tabelas fornecidas na seção Comportamento de Compactação/Descompactação do Tempo de Execução.

Suporte ao Terminal para Compactação/Descompactação

O Integration Appliance determina se o Terminal HTTP suporta ou não a compactação quando o Integration Appliance envia a primeira solicitação de HTTP no formato compacto para o Terminal HTTP (o Servidor HTTP), se o Servidor HTTP retornar um código de erro indicando que o Servidor HTTP não suporta a compactação ou não suporta o tipo de Content-Encoding especificado, o Integration Appliance reenviará a primeira solicitação no formato descompactado e todas as solicitações subsequentes para este Terminal serão enviadas no formato descompactado. Além disso, a resposta de HTTP enviada pelo Servidor HTTP não é descompactada quando recebida pelo Integration Appliance.  

O suporte ao terminal para compactação/descompactação é representado pela quarta coluna intitulada Terminal Suporta Compactação? nas tabelas fornecidas na seção Comportamento da Compactação/Descompactação do Tempo de Execução.  

Valores de Content-Encoding e Accept-Encoding no Nível da Mensagem

O valor do cabeçalho Content-Encoding no pedido de HTTP determina se o corpo do pedido é compactado e o tipo de codificação usada. Por exemplo, se o Content-Encoding for igual a deflate, o Integration Appliance enviará o corpo do pedido compactado no formato deflate, conforme mostrado na segunda linha da primeira tabela abaixo, rotulada Comportamento de Compactação ao Enviar um Pedido, e na figura a seguir.

O valor do cabeçalho Accept-Encoding no pedido define os tipos de codificação que o cliente HTTP aceita na resposta. Por exemplo, se o Accept-Encoding for igual a gzip,deflate na solicitação, o servidor HTTP poderá enviar o corpo da resposta compactada nos formatos gzip ou deflate para o Integration Appliance (agindo como um cliente), conforme mostrado na figura a seguir:
Figura 1.
Por padrão, se nada for mapeado para o parâmetro de entrada httpheaders opcional na tarefa Mapear Entradas da atividade Postar Solicitação de HTTP, um conjunto de cabeçalhos padrão será criado. Por exemplo, o cabeçalho da URL é configurado automaticamente com o valor fornecido na área de janela Configurar da atividade Postar Solicitação de HTTP.

Os valores para os cabeçalhos Accept-Encoding e Content-Encoding para a solicitação podem ser configurados explicitamente usando pares nome/valor no parâmetro de entrada httpheaders opcional da tarefa Mapear Entradas na atividade Postar Solicitação de HTTP. Por exemplo, para configurar o Content-Encoding como deflate, configure o par nome/valor a seguir no parâmetro de entrada httpheaders opcional:

Se valores não suportados ou nenhum valor for configurado para os cabeçalhos Accept-Encoding e Content-Encoding do pedido, valores-padrão serão fornecidos conforme mostrado nas tabelas a seguir:

Os valores dos cabeçalhos Accept-Encoding e Content-Encoding no pedido são usados pelo Integration Appliance e pelo servidor HTTP para determinar o comportamento de compactação/descompactação.

Configurando a Compactação/Descompactação no Nível de Atividade

Por padrão, a compactação e a descompactação são ativadas no nível de atividade para a atividade Postar Solicitação de HTTP. É possível desativar a compactação/descompactação no nível de atividade limpando a caixa de seleção Usar Compactação/Descompactação. A caixa de seleção Usar Compactação/Descompactação está disponível na tarefa Configurar da atividade. A segunda coluna intitulada Usar Caixa de Seleção Compactação/Descompactação nas tabelas a seguir fornecida na seção Comportamento da Compractação/Descompactação do Tempo de Execução, representa a configuração da caixa de seleção Usar Compactação/Descompactação.

Nota: A caixa de seleção Usar Compactação/Descompactação será descontinuada em uma liberação futura para as atividades de HTTP. Use os Parâmetros HTTP Content-Encoding e Accept-Encoding no pedido de HTTP para especificar como descompactar o corpo do pedido de HTTP e compactar o corpo da resposta de HTTP.

Comportamento de Compactação/Descompactação do Tempo de Execução

A primeira tabela fornecida na seção Comportamento da Compactação ao Enviar uma Solicitação, descreve o comportamento do tempo de execução da compactação quando o Integration Appliance envia uma solicitação de HTTP ao Servidor HTTP.

A segunda tabela fornecida na seção Valor do Cabeçalho Accept-Encoding Transmitido à Solicitação descreve o valor do cabeçalho Accept-Encoding transmitido na solicitação de HTTP.

A terceira tabela fornecida na seção Comportamento da Descompactação ao Receber uma Resposta descreve o comportamento do tempo de execução da descompactação quando o Integration Appliance recebe a resposta de HTTP do Servidor HTTP.

Comportamento da Compactação ao Enviar uma Solicitação

A tabela a seguir descreve o comportamento do tempo de execução da compactação quando o Integration Appliance envia uma solicitação de HTTP ao Servidor HTTP.

Caixa de Opção Usar Compactação/Descompactação (Nível de Atividade) Valor de Content-Encoding no Pedido de HTTP (Nível de Mensagem) O Terminal Suporta Compactação? Comportamento do Tempo de Execução da Compactação do Integration Appliance ao Enviar uma Solicitação
selecionada gzip, não configurado ou qualquer outra cadeia, exceto deflate ou identity sim O Integration Appliance envia o corpo do pedido compactado no formato gzip. O cabeçalho Content-Encoding é configurado como gzip na solicitação.
selecionada deflate sim O Integration Appliance envia o corpo do pedido compactado no formato deflate. O cabeçalho Content-Encoding é configurado como deflate na solicitação.
selecionada identity sim O Integration Appliance envia o corpo do pedido descompactado. O cabeçalho Content-Encoding é configurado como identity na solicitação.
selecionada o valor não é significativo não O Integration Appliance envia o corpo do pedido descompactado. O cabeçalho Content-Encoding é configurado como identity na solicitação.
desmarcada o valor não é significativo o valor não é significativo O Integration Appliance envia o corpo da solicitação no estado em que se encontra (inalterado). O valor atual do cabeçalho Content-Encoding é transmitido no estado em que se encontra na solicitação.

 

Valor do Cabeçalho Accept-Encoding transmitido à solicitação

A tabela a seguir descreve o valor do cabeçalho Accept-Encoding transmitido na solicitação de HTTP.

Caixa de Opção Usar Compactação/Descompactação (Nível de Atividade) Valor de Accept-Encoding Inicial O Terminal Suporta Compactação? Valor de Accept-Encoding Passado no Pedido de HTTP para o Servidor
selecionada gzip sim O cabeçalho Accept-Encoding é configurado como gzip na solicitação.
selecionada deflate sim O cabeçalho Accept-Encoding é configurado como deflate na solicitação.
selecionada gzip,deflate sim O cabeçalho Accept-Encoding é configurado como gzip,deflate na solicitação.
selecionada deflate,gzip sim O cabeçalho Accept-Encoding é configurado como deflate,gzip na solicitação.
selecionada identity sim O cabeçalho Accept-Encoding é configurado como identity na solicitação.
selecionada não configurado ou qualquer outra cadeia, exceto deflate, gzip ou identity sim O cabeçalho Accept-Encoding é configurado como gzip,deflate na solicitação.
selecionada o valor não é significativo não O valor atual do cabeçalho Accept-Encoding é transmitido no estado em que se encontra na solicitação.
desmarcada o valor não é significativo o valor não é significativo O valor atual do cabeçalho Accept-Encoding é transmitido no estado em que se encontra na solicitação.

Comportamento de Descompactação ao Receber uma Resposta

A tabela a seguir descreve o comportamento do tempo de execução da descompactação quando o Integration Appliance recebe a resposta de HTTP do Servidor HTTP.

Caixa de Opção Usar Compactação/Descompactação (Nível de Atividade) Valor de Content-Encoding na Resposta de HTTP (Nível de Mensagem) O Terminal Suporta Compactação? Comportamento do Tempo de Execução de Descompactação do Integration Appliance ao Receber uma Resposta
selecionada gzip sim O Integration Appliance descompacta o corpo da resposta usando o formato gzip.
selecionada deflate sim O Integration Appliance descompacta o corpo da resposta usando o formato deflate.
selecionada identity sim O Integration Appliance não descompacta o corpo da resposta.
selecionada valor não listado no cabeçalho Accept-Encoding sim O Integration Appliance registra um erro que os dados de resposta foram recebidos em um tipo de codificação de conteúdo não solicitado.
selecionada o valor não é significativo não O Integration Appliance não descompacta o corpo da resposta. O valor atual do cabeçalho Content-Encoding é passado no estado em que se encontra na resposta.
desmarcada o valor não é significativo o valor não é significativo O Integration Appliance não descompacta o corpo da resposta. O valor atual do cabeçalho Content-Encoding é passado no estado em que se encontra na resposta.