Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
APLICA-SE A:
Azure Data Factory
Azure Synapse Analytics
Gorjeta
Experimente o Data Factory no Microsoft Fabric, uma solução de análise tudo-em-um para empresas. O Microsoft Fabric abrange tudo, desde a movimentação de dados até ciência de dados, análises em tempo real, business intelligence e relatórios. Saiba como iniciar uma nova avaliação gratuitamente!
Uma atividade de webhook pode controlar a execução de pipelines através de código personalizado. Com a atividade do webhook, o código pode chamar um endpoint e passar uma URL de callback. A execução do pipeline aguarda a chamada de retorno antes de prosseguir para a próxima atividade.
Importante
A atividade do WebHook agora permite que você apresente o status do erro e as mensagens personalizadas de volta à atividade e ao pipeline. Defina reportStatusOnCallBack como true e inclua StatusCode e Error na carga de retorno de chamada. Para obter mais informações, consulte a seção Notas adicionais.
Criar uma atividade Webhook com interface de utilizador
Para utilizar uma atividade de Webhook num pipeline, siga os seguintes passos:
Procure Webhook no painel Atividades do pipeline e arraste uma atividade do Webhook para a tela do pipeline.
Selecione a nova atividade de webhook na tela, caso não esteja selecionada, e a sua aba Configurações para editar os detalhes.
Especifique uma URL para o webhook, que pode ser uma cadeia de caracteres de URL literal ou qualquer combinação de expressões dinâmicas , funções, variáveis do sistema ou saídas de outras atividades. Forneça outros detalhes a serem apresentados com o pedido.
Use a saída da atividade como entrada para qualquer outra atividade e faça referência à saída em qualquer lugar em que o conteúdo dinâmico seja suportado na atividade de destino.
Sintaxe
{
"name": "MyWebHookActivity",
"type": "WebHook",
"typeProperties": {
"method": "POST",
"url": "<URLEndpoint>",
"headers": {
"Content-Type": "application/json"
},
"body": {
"key": "value"
},
"timeout": "00:10:00",
"reportStatusOnCallBack": false,
"authentication": {
"type": "ClientCertificate",
"pfx": "****",
"password": "****"
}
}
}
Propriedades do tipo
| Propriedade | Descrição | Valores permitidos | Necessário |
|---|---|---|---|
| Nome | O nome da atividade do webhook. | Cadeia de caracteres | Sim |
| tipo | Deve ser definido como "WebHook". | Cadeia (de caracteres) | Sim |
| método | O método API REST para o endpoint de destino. | String. O tipo suportado é "POST". | Sim |
| URL | O endpoint de destino e o caminho. | Uma cadeia de caracteres ou uma expressão com o valor resultType de uma cadeia de caracteres. | Sim |
| cabeçalhos | Cabeçalhos que são enviados para a solicitação. Aqui está um exemplo que define o idioma e o tipo em uma solicitação: "headers" : { "Accept-Language": "en-us", "Content-Type": "application/json" }. |
Uma cadeia de caracteres ou uma expressão com o valor resultType de uma cadeia de caracteres. | Sim. É necessário um cabeçalho como este Content-Type"headers":{ "Content-Type":"application/json"}. |
| corpo | Representa a carga útil que é enviada para o endpoint. | JSON válido ou uma expressão cujo valor de resultType é JSON. Consulte o Esquema da carga útil da solicitação para o esquema da carga útil da solicitação. | Sim |
| autenticação | O método de autenticação usado para chamar o ponto final. Os tipos suportados são "Basic" e "ClientCertificate". Para obter mais informações, veja Autenticação. Se a autenticação não for necessária, exclua esta propriedade. | Uma cadeia de caracteres ou uma expressão com o valor resultType de uma cadeia de caracteres. | Não |
| tempo de espera | Quanto tempo a atividade aguarda para que o retorno de chamada especificado por callBackUri seja invocado. O valor padrão é 10 minutos ("00:10:00"). Os valores têm o formato TimeSpan d.hh:mm:ss. | Cadeia (de carateres) | Não |
| Relatar status no retorno de chamada | Permite que um usuário relate o status de falha de uma atividade de webhook. | booleano | Não |
Autenticação
Uma atividade de webhook suporta os seguintes tipos de autenticação.
Nenhuma
Se a autenticação não for necessária, não inclua a propriedade de autenticação .
Básica
Especifique o nome de usuário e a senha a serem usados com a autenticação básica.
"authentication":{
"type":"Basic",
"username":"****",
"password":"****"
}
Certificado de cliente
Especifique o conteúdo codificado em Base64 de um arquivo PFX e uma senha.
"authentication":{
"type":"ClientCertificate",
"pfx":"****",
"password":"****"
}
Identidade gerida
Use a identidade gerida para a sua Data Factory ou área de trabalho Synapse para especificar o URI do recurso para o qual o token de acesso é solicitado. Para chamar a API de Gerenciamento de Recursos do Azure, use https://management.azure.com/. Para obter mais informações sobre como as identidades gerenciadas funcionam, consulte Visão geral das identidades gerenciadas para recursos do Azure.
"authentication": {
"type": "MSI",
"resource": "https://management.azure.com/"
}
Nota
Se o serviço estiver configurado com um repositório Git, você deverá armazenar suas credenciais no Cofre da Chave do Azure para usar a autenticação básica ou de certificado de cliente. O serviço não armazena senhas no Git.
Notas adicionais
O serviço passa a propriedade adicional callBackUri no corpo enviado para a URL de ponto de extremidade. O serviço espera que esse URI seja invocado antes do valor de tempo limite especificado. Se o URI não for invocado, a atividade falhará com o status "TimedOut".
A atividade do webhook falha quando a chamada para o endpoint personalizado falha. Qualquer mensagem de erro pode ser adicionada ao corpo da chamada de retorno e usada numa atividade posterior.
Para cada chamada à API REST, o cliente atinge o tempo limite se o endpoint não responder dentro de um minuto. Esse comportamento é a prática recomendada padrão de HTTP. Para corrigir esse problema, implemente um padrão 202. No caso atual, o ponto de extremidade retorna 202 (Aceito) e o cliente verifica.
O tempo limite de um minuto na solicitação não tem nada a ver com o tempo limite da atividade. Este último é usado para aguardar a chamada de retorno especificada pelo callbackUri.
O corpo passado de volta para o URI de callback deve ser JSON válido. Defina o Content-Type cabeçalho como application/json.
Ao usar a propriedade Status no relatório de retorno de chamada, você deve adicionar o seguinte código ao corpo durante o retorno de chamada:
{
"Output": {
// output object is used in activity output
"testProp": "testPropValue"
},
"Error": {
// Optional, set it when you want to fail the activity
"ErrorCode": "testErrorCode",
"Message": "error message to show in activity error"
},
"StatusCode": "403" // when status code is >=400, activity is marked as failed
}
Conteúdos relacionados
Consulte as seguintes atividades de fluxo de controle suportadas: