Ir para o conteúdo

Crie um alvo HTTP no Jitterbit Design Studio

Introdução

Os alvos HTTP são normalmente usados como o ponto final de uma operação de transformação.

Quando HTTP é usado como alvo, o agente Jitterbit envia uma ação HTTP (uma de GET, POST, PUT, DELETE ou CUSTOM) e passa dados para a URL especificada na configuração de alvo.

Você pode configurar um alvo HTTP com informações de cabeçalho para uma ação POST na definição. Quando ele é usado em uma operação, uma mensagem de texto ASCII é formada usando essas informações de cabeçalho, uma linha em branco e as informações transformadas de uma fonte.

Por exemplo, considere uma transformação de uma consultar de banco de dados de origem em um documento XML. Os dados são recuperados da origem e, em seguida, transformados no formato de documento XML conforme definido na transformação. Em seguida, as informações do cabeçalho de destino (definidas pela definição de destino) são adicionadas ao início do documento XML, juntamente com uma linha em branco e, em seguida, o conteúdo XML. O documento final é então passado para a URL de destino usando um comando HTTP POST.

Semelhante a uma fonte HTTP, uma resposta é retornada da solicitação HTTP e então é analisada. Se a mensagem indicar sucesso, nada mais é feito. Quando uma mensagem de erro é recebida, ela é usada como parte do processo de registro de erros para a operação.

Nota

Embora o HTTP POST possa incluir praticamente qualquer tipo de payload, ele deve ser compreendido pelo servidor que o está recebendo.

Crie um alvo HTTP

Você pode escolher criar um novo alvo HTTP por conta própria ou dentro de uma operação existente. Para obter detalhes sobre como os alvos funcionam dentro das operações, consulte Criando uma operação.

Crie um novo alvo HTTP como um alvo autônomo

Dentro do seu projeto no Jitterbit Design Studio, você cria um novo alvo HTTP por qualquer um dos seguintes meios:

  • Vá para Arquivo > Novo > Novo Alvo; ou

  • Na árvore à esquerda, clique com o botão direito em Alvos e selecione Novo Alvo; ou

  • Na barra de ferramentas superior, clique no ícone de alvo azul Ícone de alvo.

No pop-up, selecione HTTP como o tipo:

Tipo HTTP

Seu novo alvo aparece em sua própria aba Novo Alvo no painel direito da janela.

Nota

Se você criar um alvo autônomo usando qualquer um desses métodos, observe que ele não está conectado a uma operação. Consulte Usar um alvo HTTP existente em uma operação existente abaixo para usar o novo alvo.

Crie um novo alvo HTTP em uma operação existente

Um alvo geralmente é criado por padrão quando você cria uma nova operação. (A exceção é uma operação que consiste apenas em um script.) Com uma operação existente, você pode especificar o tipo de seu alvo por:

  • Clique duas vezes no ícone de destino; no pop-up, selecione Criar novo destino; ou

  • Clique com o botão direito do mouse no ícone de alvo e selecione Criar novo alvo.

Na tela de configuração que aparece, use o menu suspenso Tipo para selecionar HTTP, conforme mostrado acima.

Use um alvo HTTP existente em uma operação existente

Para usar um alvo HTTP existente em uma operação existente com um alvo, você pode defini-lo por qualquer um dos seguintes:

  • Dentro da operação, clicar duas vezes no ícone de destino e, no pop-up resultante, selecionar o destino HTTP desejado na lista; ou

  • Dentro da operação, clique com o botão direito do mouse no ícone de destino, escolha Selecionar destino existente e, no pop-up resultante, selecione o destino HTTP desejado na lista; ou

  • Arrastando o alvo HTTP desejado da árvore à esquerda e soltando-o no ícone de alvo existente da operação.

Configurar um alvo HTTP

Após criar um alvo HTTP, a tela de configuração será aberta na visualização principal do Design Studio. Você pode retornar à tela de configuração a qualquer momento clicando duas vezes no ícone do alvo na operação ou clicando duas vezes no alvo na árvore à esquerda.

Configuração básica

A tela de configuração será semelhante a este exemplo:

Configuração de destino HTTP

  • Nome: Insira um nome apropriado e exclusivo para a fonte.

  • Tipo: Use o menu suspenso para selecionar HTTP, caso ainda não esteja especificado.

  • Parâmetros de conexão: Especifique os detalhes da sua conexão HTTP:

    • URL: Insira uma URL válida para o alvo. Um alvo HTTP é definido pela URL do recurso, como http://www.example.com/ups.app/xml/ShipConfirm.

      • Para usar a criptografia SSL, use https:// em vez de http:// na URL, como https://www.example.com/ups.app/xml/ShipConfirm.

      • Se os parâmetros de consultar forem especificados, forneça-os como seriam em um navegador da web, como https://www.example.com/queryrecord?id=10.

    • Login: Se aplicável, insira o nome de usuário e a senha que permitem acesso à URL. Deixe esses campos em branco se nenhum nome de usuário ou senha for necessário.

    • Senha: Digite uma senha para usar com o Login para acessar a URL referenciada no campo URL, se necessário.

    • Ativar opção de repetição: Disponível somente nas versões 10.22 e superiores do Design Studio ao usar um ambiente associado a um grupo de agentes privados, esta configuração é usada para tentar novamente uma solicitação quando um endpoint HTTP retorna um destes códigos de status: 500, 501, 502, 503, ou 504.

      Para que essa configuração entre em vigor, os agentes privados devem ser da versão 10.22 ou superior. Com versões anteriores do agente, a configuração dessa configuração será ignorada sem erro.

      Selecione a caixa de seleção para habilitar opções de configuração adicionais:

      • Max Retry: Insira o número máximo de tentativas (recomendado não mais que 5 tentativas) que uma solicitação será reenviada para o NetSuite. Se a solicitação ainda falhar após o número máximo de tentativas, uma exceção com uma mensagem de erro será retornada no log de operação. Além disso, o arquivo de log do agente privado jitterbit.log registrará cada nova tentativa.

        Cada nova tentativa é tratada como parte da mesma execução de operação, onde apenas um único registro aparece no log de operação. Quaisquer eventos Em caso de sucesso ou Em caso de falha configurados para executar operações abaixo são acionados com base no status final da operação após novas tentativas até o número máximo de tentativas.

      • Intervalo de repetição (segundos): Insira o número de segundos (máximo de 5) para aguardar entre o reenvio de uma solicitação ao endpoint HTTP.

    • HTTP Verb: Use o menu suspenso para selecionar um dos GET, POST, PUT, DELETE ou CUSTOM, dependendo dos requisitos do endpoint. Para um POST, uma solicitação vazia é postada na URL e a resposta é usada como a fonte.

  • Testar conexão: Clicar no botão Testar conexão testará o alvo HTTP; Jitterbit executará uma solicitação HTTP HEAD e retornará um erro se não for bem-sucedida. Observe que HEAD pode não ser permitido pelo servidor HTTP referenciado pela URL, mesmo que GET ou POST sejam.

  • Clique no botão Salvar na barra de ferramentas principal ou na barra de ferramentas do alvo para salvar a configuração.

Opções

Parâmetros de conexão adicionais podem ser especificados clicando em Opções na parte inferior da seção Parâmetros de conexão:

Parâmetros de conexão HTTP

  • Content-Type: O content-type padrão é vazio, o que deve ser usado se o método que está sendo usado não aceitar dados estruturados, ou se a API não exigir que o content-type seja especificado. Isso pode ser alterado desmarcando Use default Content-Type e especificando um content-type apropriado. Exemplos de content-types incluem text/plain, application/json, application/x-www-form-urlencoded, etc.

  • Opções de segurança: Para que o agente use um certificado para autenticar com o hospedar, especifique um certificado apropriado no menu suspenso. (O botão verde à direita do menu suspenso atualizará a lista de certificados disponíveis no Harmony.)

    Se aplicável, selecione Usar autenticação HTTP básica para autenticar com o hospedar usando autenticação HTTP básica sem criptografia SSL. Observe que se esta opção for usada, a senha fornecida será enviada em texto simples. (A menos que seja necessário, isso não é recomendado.)

    Dica

    Você pode gerenciar certificados SSL do lado do cliente a partir do Management Console em Personalizações > Certificados de cliente.

  • Escrever resposta para (opcional): Para salvar a resposta do servidor HTTP, especifique que ela seja escrita em um alvo separado usando o menu suspenso. Se especificado, o botão Editar fica habilitado para permitir a edição desse alvo.

  • Configurações de proxy: Use o menu suspenso para selecionar uma destas opções para um proxy personalizado para o hospedar HTTP:

    • Desabilitar: As configurações de proxy são desabilitadas para esta fonte específica, ignorando a configuração de proxy do agente se houver.

    • Padrão: As configurações de proxy são habilitadas, usando a configuração de proxy do agente se houver. Se as configurações de proxy não forem especificadas na configuração do agente, a configuração Padrão terá o mesmo resultado que a configuração Desativar.

    • Personalizado: As configurações de proxy são habilitadas para este alvo específico usando informações personalizadas fornecidas aqui. Esta opção ignora a configuração de proxy do agente se houver. Quando Custom é selecionado, estes campos ficam disponíveis:

      Campos adicionais personalizados

      Veja Habilitando proxy para agentes privados para detalhes sobre esses campos.

      Nota

      Os campos Host, Usuário, Senha e Domínio NTLM oferecem suporte a variáveis inseridas na sintaxe de colchetes com agentes 10.66 e posteriores.

Propriedades avançadas

Parâmetros avançados adicionais podem ser especificados clicando em Propriedades avançadas na parte inferior da seção Opções. Eles dizem respeito aos cabeçalhos HTTP enviados com a solicitação e aos parâmetros relacionados a SSL:

Propriedades avançadas HTTP

  • Habilitar codificação de conteúdo: Se marcado, o cabeçalho "Accept-Encoding" será enviado com a codificação suportada pelo Jitterbit. Atualmente, o Gzip é suportado. Esta opção está desativada por padrão.

  • Habilitar codificação de transferência em blocos: Se marcado, o cabeçalho "Transfer-Encoding: chunked" será enviado. Use esta opção se estiver transferindo grandes conjuntos de dados. Esta opção está desativada por padrão.

  • Enviar Expect: 100-continue: Se marcado, o cabeçalho "Expect: 100-continue" será enviado. Com esta opção, nenhum dado será enviado até que o servidor HTTP tenha validado os cabeçalhos. Use esta opção se estiver enviando grandes quantidades de dados, mas não quiser usar codificação de transferência em blocos. Esta opção está desativada por padrão.

  • Permitir cifras fracas: Se marcado, isso permitirá a comunicação com endpoints HTTP que usam cifras fracas (DES/3DES e RC4). Esta opção está desativada por padrão.

  • Set Accept-Encoding to GZip: Marcada por padrão, esta opção informa ao servidor HTTP que o Jitterbit pode aceitar uma resposta compactada com Gzip. Em troca, o Jitterbit seguirá o padrão RFC 1952 e descompactará automaticamente as respostas HTTP Gzip. Se o servidor não usar Gzip, o Jitterbit verá que a resposta não está compactada e a manipulará normalmente. Este recurso foi adicionado a partir da versão 8.20 do Jitterbit e agora é verificado por padrão para todas as fontes HTTP novas e existentes.

  • Cabeçalhos de solicitação (uma linha por cabeçalho): Qualquer texto inserido nesta caixa será enviado como um cabeçalho HTTP. Especifique um cabeçalho por linha, a menos que o cabeçalho seja encapsulado de acordo com o padrão HTTP. Os elementos de dados globais entre colchetes serão substituídos por seus valores.

  • Versão SSL: Aplicável somente ao usar HTTPS, permite a especificação de uma versão SSL específica se o servidor HTTP exigir. O padrão é "Negotiate". As opções disponíveis são:

    Opções de versão HTTP SSL

Variáveis globais de destino predefinidas que afetam um destino HTTP

Estas variáveis globais de destino predefinidas afetam alvos HTTP:

  • jitterbit.target.http.form_data
  • jitterbit.target.http.form_data.ContentType
  • jitterbit.target.http.form_data.filename
  • jitterbit.target.http.form_data.name
  • jitterbit.target.http.max_redirs
  • jitterbit.target.http.remove_trailing_linebreaks
  • jitterbit.target.http.request.header._HeaderName_(mostrado no editor de script como jitterbit.target.http.response.header.*)
  • jitterbit.target.http.ssl_cert_id
  • jitterbit.target.http.status_code
  • jitterbit.target.http.transfer_timeout

Veja Variáveis Jitterbit de destino para mais detalhes.