Esse projeto foi feito afim de exemplificar a criação lógica de uma backend que verifica uma senha de acesso onde cada botão possui mais de um número possível. A partir da thread do @FelippeRegazio no twitter foi possível criar uma API que possui endpoint que soluciona esta funcionalidade.
O projeto foi feito em NodeJS então os passos para a instalação serão:
- Instação de dependências:
yarn add
ounpm install
- Executar em modo de desenvoolvimento:
npm run dev
ouyarn dev
A API possui endpoints para gerenciamento simples de usuário:
/users
- POST: criação de um novo usuário, onde o esquema dele será:
{login: string, password: string}
. login deverá ter ao menos 4 caracteres e a senha deve possuir exatamente 6 dígitos. - GET: retorna uma lista de todos os usuários criados
- DELETE: apaga um usuário existente. É esperado o envio de um
{id: string}
contendo o identificador do usuário a ser apagado.
- POST: criação de um novo usuário, onde o esquema dele será:
/auth
- POST: faz a verificação de autenticação da senha a partir de um array das opções de cada uma das teclas digitadas. É esperado o recebimento de um objecto da seguinte forma:
{login: string, keypads: [[int,int]] de tamanho 6}
.
- POST: faz a verificação de autenticação da senha a partir de um array das opções de cada uma das teclas digitadas. É esperado o recebimento de um objecto da seguinte forma:
Fazendo a autenticação:
{
"login": "alequisk",
"keypads": [
[1,2],[1,2],[1,2],[1,2],[1,2],[1,2]
]
}
Criando um novo usuário:
{
"login": "alequisk",
"password": "123456"
}