Skip to content

Calebe94/VotaAppServer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

VotaAppServer

Web service para o VotaApp.

Setup

  • Instalar as Dependências:

      npm install
    
  • Para criar o banco:

      npm run createdb
    
  • Rodar o servidor para testes:

      npm test
    
  • Rodar o servidor para Produção:

      npm start
    

Rotas

Autenticação

Rota para a autenticação do eleitor.

  /api/auth/
  • Tipo: POST

  • Recebe: JSON { username: username, password: password}

  • Retorna: {"auth":true, "votou": (0/1), "prefeito": candidato_info, "vereador": candidato_info }

  • Teste:

    curl -d '{"username": "123412341234", "password": "spcsp2018"}' -H "Content-Type: application/json" -X POST http://localhost:8080/api/auth/
    

Candidatos

Rota para resgatar todos os candidatos cadastrados no banco de dados.

  /api/candidatos/:type
  • Tipo: GET

  • Recebe: vereador ou prefeito como parâmetro de URL

  • Retorna: [ { nome: String, partido: String, foto: String, id: _id } ]

  • Teste:

    curl http://localhost:8080/api/candidatos/vereador
    

Adicionar

Rota utilizada para cadastrar Prefeito, Vereador e Eleitor.

  /api/add/:(vereador/prefeito/eleitor)
  • Tipo: POST

  • Recebe:

    • Vereador/Prefeito: { nome: nome_candidato, partido: partido_candidato, foto: url_foto }
    • Eleitor: { nome: nome_eleitor, titulo: titulo_eleitor, senha: senha_eleitor }
  • Retorna: { status: true/false}

  • Teste:

    curl -d '{"nome": "Jon Doe", "titulo": "123112311231", "senha": "umasenhaforte"}' -H "Content-Type: application/json" -X POST http://localhost:8080/api/add/eleitor
    

Votar

Rota utilizada para efetuar a votação realizada pelo eleitor.

  /api/votar/
  • Tipo: POST

  • Recebe: { eleitor: id_eleitor, vereador: _id_vereador, prefeito: _id_prefeito }

  • Retorna: { status: true/false}

  • Teste: curl -d '{"eleitor":"123412341234","vereador":"5bd278cbb6157a6312833c1b","prefeito":"5bd278cbb6157a6312833c0d"}' -H "Content-Type: application/json" -X POST http://localhost:8080/api/votar

Banco

  • Nome do Database

    • vota_app
  • Collections

    • vereadores
    • prefeitos
    • eleitores

Referências