Skip to content

SamuelCandido/RestAPI-Python

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Rest API - Comandas e Usuários

API RESTful desenvolvida em Flask para gerenciamento de usuários, comandas e autenticação JWT.
Inclui documentação interativa via Swagger UI.

Funcionalidades

  • Cadastro, consulta e remoção de usuários (Controller → Service → DAO)
  • Autenticação via JWT (login)
  • Cadastro, consulta, atualização e remoção de comandas com produtos (Controller → Service → DAO)
  • Documentação Swagger UI

Instalação

  1. Clone o repositório:

    git clone https://github.com/SamuelCandido/RestAPI-Python.git
    cd Rest
  2. Instale as dependências:

    pip install -r requirements.txt
  3. Execute a aplicação:

    python app.py

Documentação Swagger

Acesse http://localhost:8080/apidocs para visualizar e testar os endpoints.

Exemplos de Uso

Cadastro de Usuário

POST /RestAPIFurb/usuarios
{
  "nome": "joao",
  "telefone": "478888888",
  "senha": "123"
}

Login

POST /RestAPIFurb/login
{
  "nome": "joao",
  "senha": "123"
}

Cadastro de Comanda

POST /RestAPIFurb/comandas
{
  "idUsuario": 1,
  "produtos": [
    {"nome": "X-Salada", "preco": 30}
  ]
}

Atualização de Produtos da Comanda

PUT /RestAPIFurb/comandas/1
{
  "produtos": [
    {"id": 2, "nome": "X-Bacon", "preco": 35}
  ]
}

Remoção de Usuário

DELETE /RestAPIFurb/usuarios/1

Remoção de Comanda

DELETE /RestAPIFurb/comandas/1

Observações

  • O banco de dados é SQLite e já está configurado em config.py.
  • O Swagger UI está integrado e lê o arquivo swagger/swagger.yaml.
  • Para endpoints protegidos, envie o token JWT no header:
    Authorization: Bearer <seu_token>
    
  • Todos os acessos ao banco são feitos via DAOs (UsuarioDAO, ComandaDAO).

Dependências

Veja o arquivo requirements.txt:

flask
flask_sqlalchemy
flask_marshmallow
marshmallow-sqlalchemy
flask-jwt-extended
flasgger
flask-cors

About

Validacao de WEB II

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages