Os filtros de API permitem adicionar lógica personalizada a uma API sem modificar sua implementação principal. O pré-filtro atua antes de a API processar uma solicitação recebida, o que permite remodelar parâmetros, validar entradas ou injetar contexto. O pós-filtro atua após a API retornar os resultados, possibilitando transformar, enriquecer ou mascarar a resposta.
Como os filtros de API funcionam
O DataService Studio é compatível com funções Aviator e Python. Use o DataService Studio para criar funções, testar, publicar e usar funções. Após a publicação da função, associe-a a uma API para utilizá-la como filtro. Essa abordagem permite atender a diversos requisitos de consulta e adaptar-se a cenários de negócios sem alterar a lógica principal da API. Para mais detalhes, consulte Usar uma função como filtro de API.
O pré-filtro pré-processa os parâmetros de solicitação da API antes que ela processe a chamada.
O pós-filtro transforma os resultados retornados pela API após o processamento da chamada.
Para ver exemplos de código de cenários comuns, consulte Práticas recomendadas: usar uma função Aviator como filtro.
Requisitos
O pré-filtro e o pós-filtro de uma API devem utilizar o mesmo tipo de função: ambos Aviator ou ambos Python. O sistema não oferece suporte à combinação de tipos de função diferentes para o pré-filtro e o pós-filtro de uma mesma API.
-
Execute as funções Aviator em um grupo de recursos exclusivo do DataService Studio por motivos de segurança e desempenho.
Edite ou teste uma função e anexe um grupo de recursos exclusivo do DataService Studio a ela. Para mais informações, consulte Criar uma função.
Durante o desenvolvimento de uma API, caso ative um filtro e associe uma função de destino, anexe um grupo de recursos exclusivo do DataService Studio à API. Para mais informações, consulte Gerar uma API na interface sem código.
Limitações
O recurso de filtro requer o DataWorks Basic Edition ou uma versão superior.
As funções Python estão em processo de atualização. Não crie, clone ou publique novas funções Python. Utilize o tipo de função Aviator como alternativa. Para mais informações, consulte Criar uma função Aviator.