Os callbacks permitem que as execuções de fluxos de trabalho aguardem que outro serviço faça um pedido ao ponto final de callback. Esse pedido retoma a execução do fluxo de trabalho.
Com os callbacks, pode sinalizar ao seu fluxo de trabalho que ocorreu um evento especificado e aguardar esse evento sem sondagem. Por exemplo, pode criar um fluxo de trabalho que lhe envia uma notificação quando um produto volta a estar em stock ou quando um artigo foi enviado; ou que aguarda para permitir a interação humana, como rever uma encomenda ou validar uma tradução.
Esta página mostra como criar um fluxo de trabalho que suporta um ponto final de retorno de chamada e que aguarda que os pedidos HTTP de processos externos cheguem a esse ponto final. Também pode aguardar eventos através de callbacks e acionadores do Eventarc.
As chamadas de retorno requerem a utilização de duas funções incorporadas da biblioteca padrão:
events.create_callback_endpoint—Cria um ponto final de retorno que espera o método HTTP especificadoevents.await_callback—Aguarda que seja recebida uma chamada de retorno no ponto final indicado
Crie um ponto final que receba um pedido de retorno de chamada
Crie um ponto final de retorno de chamada que possa receber pedidos HTTP para chegar a esse ponto final.
- Siga os passos para criar um novo fluxo de trabalho ou escolha um fluxo de trabalho existente para atualizar, mas ainda não o implemente.
- Na definição do fluxo de trabalho, adicione um passo para criar um ponto final de retorno de chamada:
YAML
- create_callback: call: events.create_callback_endpoint args: http_callback_method: "METHOD" result: callback_details
JSON
[ { "create_callback": { "call": "events.create_callback_endpoint", "args": { "http_callback_method": "METHOD" }, "result": "callback_details" } } ]
Substitua
METHODpelo método HTTP esperado, um deGET,HEAD,POST,PUT,DELETE,OPTIONSouPATCH. A predefinição éPOST.O resultado é um mapa,
callback_details, com um campo