Compactação/Descompactação com a Atividade HTTP Solicitação Invoke/Get/Post/Head/Put/Delete

Durante o tempo de execução, a atividade Solicitação de HTTP Invoke/Get/Post/Head/Put/Delete envia uma solicitação de HTTP compatível com o protocolo HTTP/HTTPS 1.1 para o servidor HTTP.

Nota: A atividade Solicitação de HTTP Invoke/Get/Post/Head/Put/Delete suporta compactação/descompactação com os formatos gzip ou deflate. Ela não suporta o formato de compactação do arquivo UNIX comum chamado compress.

O comportamento do tempo de execução de compactação/descompactação da atividade Solicitação de HTTP Invoke/Get/Post/Head/Put/Delete depende das condições a seguir:

Os efeitos dessas condições no comportamento de tempo de execução de compactação/descompactação da atividade Solicitação de HTTP Invoke/Get/Post/Head/Put/Delete são descritos nas seções a seguir e 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 do terminal para compactação/descompactação é representado pela coluna rotulada Terminal Suporta Compactação? nas tabelas fornecidas na seção Comportamento de 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 Content-Encoding for igual a deflate, o Integration Appliance enviará o corpo da solicitação compactada no formato deflate conforme mostrado na segunda linha da primeira tabela rotulada Comportamento de Compactação ao Enviar uma Solicitação 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 Solicitação de HTTP Invoke/Get/Post/Head/Put/Delete, 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 Solicitação de HTTP Invoke/Get/Post/Head/Put/Delete.

Os valores para os cabeçalhos Accept-Encoding e Content-Encoding para a solicitação podem ser configurados explicitamente usando pares de nome/valor no parâmetro de entrada httpheaders opcional da tarefa Mapear Entradas na atividade Solicitação de HTTP Invoke/Get/Post/Head/Put/Delete. 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/descompactação não é usada para todas as atividades HTTP. É possível selecionar compactação ou descompactação em nível de atividade usando a caixa de seleção Usar Compactação/Descompactação que é exibida na tarefa Configurar da atividade. A coluna rotulada Usar caixa de seleção de compactação/descompactação na tabela mostrada em Comportamento de Compactaçã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 tabela fornecida na seção Comportamento da Compactação ao Enviar uma Solicitação descreve o comportamento de compactação do tempo de execução quando o Integration Appliance envia uma solicitação de HTTP para o servidor HTTP.

A tabela fornecida na seção Valor do Cabeçalho Accept-Encoding Passado para a Solicitação descreve o valor do cabeçalho Accept-Encoding passado na solicitação de HTTP.

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

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

A tabela a seguir descreve o comportamento de compactação do tempo de execução quando o Integration Appliance envia uma solicitação de HTTP para o 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 Inicial de Accept-Encoding 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.



Feedback | notices