GERADOR DE ENDPOINTS

Então, recentemente fiz uma api onde eu consigo gerar endpoints genéricos de acordo com o que o cliente quiser, basicamente ele escolhe o que vai ir na url por exemplo, tem a url base "localhost:3000/" ai vamos supor que ele queira criar um endpoint nomes "localhost:3000/nomes" ai depois ele escolhe o método, se é GET ou POST e depois no último input ele coloca a response {"nome":"joão"}, vocês acham interessante eu subir esse projeto? o banco usado foi o pg, o back em node, e o front com react.

não sei se entendi bem, mas pelo que entendi pode resultar em problemas de segurança e a probabilidade de gerar bugs é bem alta, sem falar que a comunicação client-server pode ficar um bagunça, porque a previsibilidade vai ser afeta, contudo se você tiver um bom controle sobre a geração de endpoints, pode ser viável, enfim, essa é minha visão como júnior, talvez alguém mais experimente discorde e tenha uma visão mais interessante sobre isso

No caso cada usuário tem sua lista de endpoints onde ele pode fazer todo o crud pela interface mesmo
se é uma necessidade do projeto e você irá fornecer os possíveis inputs, então não vejo nenhum problema

Interessante, tenho curiosidade de entender melhor, ok o cliente cria um endpoint e define a response, mas daonde vêm os dados, as regras de negocio para manipula-los etc?

É bem básico o funcionamento na real, tem a tabela endpoints por exemplo, lá eu tenho id, user_id, o path, o method e a response que é um json, na hora de manipular os endpoints que o usuario criou é como qualquer outro crud, e pra pegar a response é só fazer um fetch por exemplo, não sei se era essa a dúvida. Fiz isso pq quando eu comecei a estudar eu sentia muita dificuldade pra achar apis que tivessem as coisas que eu queria, ai fui aprendendo a fazer as minhas apis e etc, e semana passada participei de um hackaton onde a proposta era mais ou menos parecida com isso kk, ai me brilhou de montar esse projetinho.

Pelo que entendi, no projeto, o usuário cria os próprios endpoints, definindo a rota e a resposta retornada por ela. Minhas dúvidas são:

  • A resposta retornada por cada rota é estática? Ou seja, quando o usuário quiser alterar a resposta da rota, ele precisa alterar a configuração dela no projeto?
  • No caso de uma requisição POST, como o usuário programa o que será feito com os dados enviados junto com a requisição?

Apesar de não estar muito claro, o projeto parece interessante. Você poderia dar um exemplo de aplicação em que ele pode ser aproveitado.

Opa, vou tentar esclarecer como eu conseguir, explicar as coisas não é meu forte hauhausah - A resposta retornada por cada rota é estática? Ou seja, quando o usuário quiser alterar a resposta da rota, ele precisa alterar a configuração dela no projeto? Simm, a resposta retornada por cada rota é estática e não requer que o usuário mexa no código do projeto pra ser alterada. No projeto atual, as respostas são configuradas diretamente por meio da interface do usuário, podendo editar e etc. - No caso de uma requisição POST, como o usuário programa o que será feito com os dados enviados junto com a requisição? Para as requisições POST, eu to trabalhando no desenvolvimento da lógica que permitirá que os dados enviados com a solicitação sejam processados do jeito certo. e alguns exemplos que eu pensei foram: 1. Prototipagem Rápida: É útil pra criar endpoints pra prototipar funcionalidades em um estágio inicial do desenvolvimento, permitindo que os desenvolvedores trabalhem com respostas simuladas antes de implementar a lógica real do servidor. 2. Simulação de Cenários: Pode ser usado pra simular cenários específicos, como erros de servidor, para testar como a aplicação reage a esses cenários. ainda tem bastante coisa pra melhorar, mas a ideia me deixa muito animado.
Legal, obrigado por esclarecer. Você está criando uma ferramenta para ajudar o desenvolvedor. Se é pra faciliar a vida, a ideia é sempre bem-vinda 😃 Para lidar com as requisições POST, talvez seja interessante você dar uma olhada em como algumas plataformas low-code funcionam. Boa sorte com o projeto!
Muito obrigado pela dica, vou dar uma olhada simm

Tem um vídeo funcionando? Seria legal ver

Tem sim, segue o link https://youtu.be/eIDwMREWP3Y