WX LightREST

DataService – LightREST

O componente LightREST oferece, além da possibilidade de implantar Web Services em REST, um sistema de mais alto nível chamado DataService.

Frequentemente, é necessário publicar várias tabelas de um banco de dados em rotas diferentes. Pode então se tornar trabalhoso declarar cada rota e desenvolver procedimentos REST muito semelhantes, com a única diferença de que não distribuem dados da mesma tabela do banco de dados.

O DataService (que é uma "camada adicional" do LightREST) permite ativar, sem nenhum desenvolvimento de procedimento REST, rotas "conectadas" a tabelas ou consultas e distribuí-las através de um Web Service REST, no formato JSON. Naturalmente, um controle completo sobre os dados distribuídos, os destinatários e os métodos REST autorizados está incluído. Como o DataService utiliza o LightREST, todas as características e vantagens deste são mantidas.

Segurança de Dados

Como indicado na documentação do LightREST, as boas práticas de segurança proíbem a divulgação aberta de identificadores do banco de dados a terceiros externos. O DataService oferece, portanto, criptografia/descriptografia automática dos IDs automáticos numéricos, o que permite proteger os dados sem nenhuma intervenção do desenvolvedor. Os IDs do tipo inteiro são substituídos por UUIDs quando enviamos dados por um Web Service. Se um UUID é recebido como parâmetro de uma requisição, o DataService o descriptografa automaticamente e permite acessar o registro correspondente.

Callbacks e Hooks

Controle Completo com Callbacks

Para manter um controle completo sobre a execução dos processos do DataService, o desenvolvedor pode declarar procedimentos que serão executados automaticamente antes e depois de cada chamada. Esses procedimentos podem, por exemplo:

  • Controlar o direito de acesso a um dado
  • Verificar a coerência de um registro antes da inserção ou modificação
  • Recusar a atualização de um dado
  • Forçar valores padrão
  • Completar, apagar ou modificar dados antes do envio do resultado
  • E muito mais...

Fontes de Dados Suportadas

Com o DataService, o desenvolvedor pode publicar sem esforço dados provenientes de diferentes fontes:

Tabela de Banco de Dados

Tabela de banco de dados (ou arquivo no HyperfileSQL)

Objeto: dsTable

Consulta WinDev

Consulta WinDev (.wdr)

Objeto: dsRequeteWD

Consulta SQL

Consulta SQL em formato texto

Objeto: dsRequeteTXT

Recursos Adicionais

Paginação

O DataService gerencia opcionalmente a paginação na distribuição dos dados, para que o solicitante possa, por exemplo, exibir dados volumosos de forma otimizada.

Distribuição de Imagens

O DataService também sabe distribuir automaticamente em REST as imagens memos armazenadas em um banco de dados HyperfileSQL, com possibilidade de redimensionamento em tempo real.