O plug-in HTTP-REST oferece suporte a dois tipos de hosts REST que você pode usar para fazer solicitações a endpoints REST: hosts persistentes e hosts transitórios.
Diferenças entre hosts persistentes e transitórios
Hosts Persistentes | Hosts Transitórios |
---|---|
Armazenados no banco de dados do Automation Orchestrator. | Não armazenados no banco de dados do Automation Orchestrator. Hosts transitórios são objetos virtuais que residem na memória enquanto um script está sendo executado. |
Armazenados no inventário do Automation Orchestrator. Hosts persistentes também podem ser exibidos em menus suspensos do tipo RESTHost. |
Não armazenados no inventário do Automation Orchestrator. |
Disponível após a reinicialização, o failover e a atualização. Quando um token de fluxo de trabalho for interrompido, ele poderá continuar de onde parou se o item de fluxo de trabalho usar um host REST persistente como entrada. Use hosts persistentes como entradas/ saídas de itens de fluxo de trabalho. Você poderá criá-los no início do script e excluí-los se não precisar mais deles. |
Não disponível após a reinicialização e o failover. Quando um fluxo de trabalho é interrompido, ele não pode restaurar uma entrada de item de fluxo de trabalho que carrega um host REST transitório. Use hosts transitórios em scripts ao fazer solicitações isoladas em relação a um servidor que, de outra forma, você não usa. |
Podem ser exportados e importados como elementos de recursos. | Transferíveis entre diferentes instâncias do Automation Orchestrator porque elas são criadas e gerenciadas inteiramente a partir de scripts. Use hosts transitórios ao trabalhar em vários ambientes sem a necessidade de migrar hosts persistentes. |
Cada host persistente tem um cliente HTTP dedicado que é usado para gerenciar solicitações para o endpoint. | Os hosts reutilizam a mesma instância do cliente HTTP. |
Solicitações paralelas têm suporte para hosts persistentes e transitórios.
|
Considerações para hosts transitórios
- Hosts transitórios transmitidos entre itens de fluxo de trabalho como entrada/ saída podem não funcionar em todos os casos. Os hosts transitórios dependem do cache de fluxo de trabalho, que não funciona quando fluxos de trabalho assíncronos são iniciados, por exemplo. Os fluxos de trabalho aninhados também podem falhar.
- Somente as solicitações GET e HEAD são redirecionadas automaticamente. O redirecionamento de URL usa a estratégia
default
. - Não há suporte para a verificação do nome do host.
- Não há suporte para a autenticação de certificado de cliente.
Solução de problemas
Se você usar hosts transitórios sem suporte para solicitações paralelas, poderá enfrentar regressões de script após atualizar seu ambiente do Automation Orchestrator ou atualizar o plug-in HTTP-REST Para a versão 2.4.1.19272162 ou posterior. O uso de diferentes instâncias de host transitório para executar solicitações, que dependem umas das outras para cookies, não é compatível.
- Em vez de hosts transitórios, use hosts e operações persistentes. Você pode criar hosts REST persistentes de duas maneiras.
- Crie um host REST apontando para o servidor usando o fluxo de trabalho Adicionar um host REST.
Em vez de usar hosts transitórios, use o host REST como entrada em todos os lugares onde você precisa criar uma solicitação para ele.
- Não crie operações transitórias apontando para este host. Em vez disso, crie operações regulares.
- O suporte para solicitações paralelas deve ser desativado. Caso contrário, os cookies não serão preservados.
Essa abordagem não é recomendada se você fizer várias solicitações em paralelo a esse host em seus fluxos de trabalho.
- Crie um host REST por fluxo de trabalho executado a partir do script e exclua-o.
Use esse método se você fizer solicitações paralelas ao servidor. Por exemplo, se você tiver duas solicitações paralelas, crie dois hosts diferentes.
- Clonar um fluxo de trabalho.
- Adicione um elemento de script que cria o host que você deseja usar para solicitações futuras.
- Use o host como a saída do fluxo de trabalho e como entrada para todos os outros scripts que fazem solicitações a esse host.
- Para limpar o estado, adicione um elemento no final do script que exclui o host que você criou.
- Crie um host REST apontando para o servidor usando o fluxo de trabalho Adicionar um host REST.
- Use um host temporário para todas as solicitações dependentes em um determinado fluxo de trabalho e transmita-o entre os itens de fluxo de trabalho como entrada / saída, conforme necessário.
A passagem de hosts transitórios entre vários elementos de fluxo de trabalho não é oficialmente suportada, mas espera-se que funcione. Observe que, durante a reinicialização, o estado do fluxo de trabalho pode ser perdido e o fluxo de trabalho pode não ser retomado com êxito.
Se você usar hosts transitórios e quiser fazer solicitações que dependem uns dos outros para cookies, deverá usar a mesma instância de host transitória para todas as solicitações. Se as solicitações abrangem vários itens de fluxo de trabalho, crie o host no primeiro item de fluxo de trabalho e, em seguida, transmita-o como entrada para o restante.
- Use seus hosts transitórios atuais, mas modifique as solicitações com falha para incluir os cookies necessários, adicionando os respectivos cabeçalhos.
Talvez você precise analisar os cookies da resposta anterior e usá-los em solicitações subsequentes.