Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Este artigo mostra como adicionar uma fonte HTTP a um fluxo de eventos.
O conector HTTP fornece uma maneira configurável e sem código de transmitir dados de qualquer API REST diretamente para Eventstream para processamento em tempo real. Ele permite que você efetue pull contínuo de dados de plataformas SaaS e feeds de dados públicos e analise automaticamente as respostas JSON em eventos estruturados. Ele também oferece feeds públicos de exemplo para ajudá-lo a começar rapidamente; selecione uma API de exemplo, insira sua chave de API e deixe o Eventstream preencher os cabeçalhos e parâmetros necessários.
Pré-requisitos
- Um espaço de trabalho com capacidade Fabric ou tipo Fabric Trial.
- Acesso ao workspace com Colaborador ou papéis de workspace superiores.
- Um ponto de extremidade HTTP acessível publicamente. Se ele residir em uma rede protegida, conecte-se a ela usando a injeção de rede virtual do conector Eventstream.
- Se você não tiver um fluxo de eventos, siga o guia para criar um fluxo de eventos.
Adicionar HTTP como fonte
Se você ainda não adicionou nenhuma fonte ao fluxo de eventos, selecione o bloco Conectar fontes de dados . Você também pode selecionar Adicionar fonte>Conectar fontes de dados na faixa de opções.
Se você estiver adicionando a origem a um fluxo de eventos já publicado, alterne para modo de edição. Na faixa de opções, selecione Adicionar fonte>Conectar fontes de dados.
Pesquise por http e selecione Conectar para adicionar o conector HTTP ao fluxo de eventos.
Configurar e conectar-se ao HTTP
Você pode selecionar uma das APIs públicas de exemplo para começar rapidamente com cabeçalhos e parâmetros predefinidos ou selecionar Sair para configurar seu próprio conector HTTP personalizado.
Usar APIs públicas de exemplo
Selecione um exemplo de API pública para configurar rapidamente o conector HTTP:
- Binance. Obter o preço mais recente do Bitcoin
- CoinGecko. Obter o preço atual do Bitcoin em USD
- Transporte para Londres. Obter previsões de chegada ao vivo para uma estação de Londres
- Vantagem Alfa. Obter o preço das ações de Microsoft em tempo real (MSFT)
- OpenWeather. Obter a previsão do tempo para um local
- NewsAPI. Obter as últimas manchetes de negócios nos EUA
Para APIs que exigem uma chave de API, use o link fornecido para aplicar à chave de API e insira-a na caixa de entrada. Em seguida, o conector cria automaticamente a conexão de nuvem Fabric e preenche os parâmetros e os cabeçalhos HTTP necessários.
Importante
A API de exemplo binance não requer uma chave de API, mas você é responsável por cumprir seus Termos de Uso.
Se você escolher Usar conexão existente, selecione Aplicar exemplo para pré-armazenar os cabeçalhos e parâmetros necessários para a API de exemplo sem inserir uma chave de API.
Como alternativa, selecione Sair para fechar a janela e configurar sua própria fonte HTTP do zero.
Configurar sua própria fonte HTTP
Siga as etapas para configurar sua própria fonte HTTP sem uma API de exemplo.
Crie uma nova conexão. Selecione Nova conexão e insira as propriedades necessárias para sua fonte HTTP:
- URL base: a URL base do ponto final HTTP.
- Uri de Audiência de Token (opcional): o recurso para o qual o token se destina.
- Nome da conexão: insira um nome para a conexão.
-
Tipo de autenticação: Atualmente, o conector HTTP só dá suporte à autenticação
Anonymous,Basic, eAPI Key.
Método de solicitação: Selecionar
GETouPOST.Cabeçalhos e parâmetros: se você selecionou a autenticação de chave de API ao criar a conexão de nuvem, use o parâmetro dinâmico ${apiKey} em seus cabeçalhos ou parâmetros para referenciar a Chave de API.
Por exemplo, para se conectar ao CoinGecko, use o cabeçalho:
x_cg_demo_api_key=${apiKey}.Importante
NÃO insira sua chave de API ou outras credenciais nos cabeçalhos ou parâmetros.
Intervalo de solicitação (s): especifica o tempo em segundos para aguardar entre solicitações consecutivas; o intervalo válido é [1, 3600].
Tentativas máximas: o número máximo de vezes que o conector tenta novamente uma solicitação quando ocorre um erro; o intervalo válido é [10, 100].
Retração de tentativa (s): o tempo de espera em segundos após um erro antes que o conector tente novamente; o intervalo válido é [1, 3600].
Código de status de tentativa: os códigos de erro HTTP retornados que fazem com que o conector repita a solicitação. Insira uma lista separada por vírgulas de códigos ou intervalo de códigos. Os intervalos são especificados com um código de início e um código de término opcional. Por exemplo:
-
400-inclui todos os códigos maiores ou iguais a 400. -
400-500inclui códigos de 400 até 500, incluindo o código 500. -
404,408,500-solicita que o conector tente novamente em 404 NOT FOUND, 408 REQUEST TIMEOUT e todos os códigos de erro 5xx.
Alguns códigos de status são sempre repetidos, como não autorizados, tempos limite e muitas solicitações.
-
Manipular APIs paginadas
Algumas APIs REST retornam dados em várias páginas em vez de uma única resposta. Por exemplo, uma API pode retornar 100 registros em cada resposta e exigir solicitações adicionais para recuperar os registros restantes. O conector HTTP dá suporte à paginação para que possa recuperar dados em várias páginas em um ciclo de sondagem.
Tipos de paginação com suporte
O conector HTTP dá suporte a esses padrões de paginação:
-
Paginação baseada em página: a solicitação inclui um parâmetro de página, como
page=1oupage=2. O conector incrementa o número de página para solicitar a próxima página. -
Paginação baseada em cursor: a resposta à API inclui um cursor ou token de continuação, como
continuationTokenounextPageToken. O conector usa esse valor para solicitar a próxima página.
Configurar paginação
Para usar a paginação, defina estas configurações no conector HTTP:
- Paginação habilitada: ativa o tratamento de paginação.
- Modo de paginação: especifica o tipo de paginação. Os valores com suporte são Page e Cursor.
-
Ponteiro JSON de dados de resposta: especifica o local da matriz de dados na resposta da API, como
/value,/itemsou/articles.
Exemplo de paginação baseada em página
Para uma API baseada em página, a primeira solicitação pode ser GET /api/data?page=1.
Exemplo de configuração:
-
Paginação habilitada:
true. - Modo de paginação: página.
O conector envia solicitações para páginas subsequentes, como page=2 e page=3. A paginação é interrompida quando a resposta à API indica que não há mais dados disponíveis, como retornando uma matriz vazia.
Exemplo de paginação baseada em cursor
Para uma API baseada em cursor, a resposta pode incluir um token de continuação, como "continuationToken": "ABC123".
O conector extrai o token de continuação e o usa na próxima solicitação, como GET /api/data?continuationToken=ABC123. A paginação é interrompida quando a resposta não inclui outro token ou o valor do token é nulo.
Quando a paginação é interrompida
O conector para de solicitar páginas adicionais quando uma das seguintes condições é atendida:
- A API retorna uma resposta vazia.
- A resposta não inclui um token de próxima página.
- A API indica que não há mais páginas disponíveis.
Considerations
- Cada ciclo de sondagem começa na primeira página.
- Confirme se a API dá suporte à paginação antes de habilitar esse recurso.
- Configuração de paginação incorreta ou configurações de ponteiro JSON podem causar dados ausentes ou duplicados.
Use paginação quando uma API limita o número de registros retornados em cada solicitação.
Detalhes do fluxo ou da origem
Na página Conectar , siga uma destas etapas com base em se você está usando o Eventstream ou Real-Time hub.
Fluxo de eventos:
No painel Detalhes da origem à direita, siga estas etapas:
Para o nome da fonte, selecione o botão Lápis para alterá-lo.
Observe que o Nome Eventstream e o Nome do Fluxo são somente leitura.
Real-Time hub:
Na seção Detalhes de streaming à direita, siga estas etapas:
Selecione o workspace Fabric em que deseja criar o fluxo de eventos.
Para o nome do eventstream, selecione o botão Lápis e insira um nome para o eventstream.
O valor do nome do Stream é gerado automaticamente para você acrescentando -stream ao nome do fluxo de eventos. Esse fluxo aparece na página Todos os fluxos de dados do hub em tempo real quando a execução do assistente é finalizada.
Selecione Avançar na parte inferior da página Configurar .
Revisar e conectar
Na tela Examinar + conectar, revise o resumo e selecione Adicionar (Fluxo de Eventos) ou Conectar (Hub em Tempo Real).
Você pode ver a origem HTTP adicionada ao fluxo de eventos no modo Editar.
Selecione Publicar para publicar as alterações e iniciar o streaming de dados da fonte HTTP para o fluxo de eventos.
Limitações
- Atualmente, o conector HTTP dá suporte apenas a respostas da API JSON .
- Não há suporte para autenticação OAuth.
- A origem HTTP não dá suporte a recursos de CI/CD, incluindo Integração com Git e Pipeline de Implantação. Exportar ou importar um item Eventstream que inclua essa origem por meio do Git pode resultar em erros.
Conteúdo relacionado
Outros conectores:
- Fluxos de dados do Amazon Kinesis
- Azure Cosmos DB
- Hubs de eventos do Azure
- Hub IoT do Azure
- Banco de Dados SQL do Azure CDC (Change Data Capture)
- Confluent Kafka
- Ponto de extremidade personalizado
- CDA do Banco de Dados MySQL
- CDC do banco de dados PostgreSQL
- Dados de exemplo
- Eventos do Armazenamento de Blobs do Azure
- Evento do espaço de trabalho do Fabric