https://github.com/vmeazevedo/rest-api_gerenciamento-hoteis_flask-mvc
Aplicação REST API de gerenciamento de informações cadastrais de hoteis em Python utilizando Framework Flask e padrão MVC com controle de cadastro de usuário, login e logout
https://github.com/vmeazevedo/rest-api_gerenciamento-hoteis_flask-mvc
flask mvc-architecture postman python sqlalchemy-python
Last synced: 21 days ago
JSON representation
Aplicação REST API de gerenciamento de informações cadastrais de hoteis em Python utilizando Framework Flask e padrão MVC com controle de cadastro de usuário, login e logout
- Host: GitHub
- URL: https://github.com/vmeazevedo/rest-api_gerenciamento-hoteis_flask-mvc
- Owner: vmeazevedo
- License: gpl-3.0
- Created: 2022-04-14T01:12:03.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2022-04-15T17:47:51.000Z (about 3 years ago)
- Last Synced: 2025-02-13T03:48:03.917Z (2 months ago)
- Topics: flask, mvc-architecture, postman, python, sqlalchemy-python
- Language: Python
- Homepage:
- Size: 71.3 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# REST-API_Gerenciamento-Hoteis_Flask-MVC
Aplicação REST API de gerenciamento de informações cadastrais de hoteis em Python utilizando Framework Flask e padrão MVC com controle de cadastro de usuário, login e logout. [](https://twitter.com/vmeazevedo) [](https://www.linkedin.com/in/vin%C3%ADcius-azevedo-45180ab2/)

## Requirements
```sh
pip install -r requirements.txt
```## Exemplo de utilização
1. Clone o repositório para sua máquina
``
git clone https://github.com/vmeazevedo/Python-Flask-MVC_REST-API
``
2. Execute o arquivo python ``app.py``.
3. Abra o POSTMAN e importe a collection ``REST_API.postman_collection.json``, localizada na pasta 'collection_postman'.
4. Execute a Request de Cadastro conforme documentação abaixo para criar um id de usuário.
5. Execute a Request de Login para que o token seja gerado validando assim suas requests.
6. Siga a documentação abaixo para executar as requisições e verificar onde se faz necessário o uso de seu token.
7. Após a utilização execute a Request de Logout para invalidar seu token de sessão.## Exemplificação via POSTMAN - Usuários
### Cadastro
**url:** localhost:5000/cadastro
```json
{
"login": "usuario",
"senha": "senha_cadastro"
}
```
**Response:**
```json
{
"resultado": "Usuário criado com sucesso!"
}
```### Login
**url:** localhost:5000/login
**Body:**
```json
{
"login": "usuario",
"senha": "senha_cadastro"
}
```
**Response:**
```json
{
"token_de_acesso": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJmcmVzaCI6ZmFsc2UsImlhdCI6MTY1MDA0MDY4OCwianRpIjoiODV"
}
```### Logout
**url:** localhost:5000/logout
**Auth:** Token = token_de_acesso
**Response:**
```json
{
"resultado": "Usuário deslogado!"
}
```### Get User by Id
**url:** localhost:5000/usuario/{user_id}
**Response:**
```json
{
"user_id": user_id,
"login": "usuario"
}
```### Delete User by iD
**url:** localhost:5000/usuario/{user_id}
**Response:**
```json
{
"resultado": "Usuário deletado!"
}
```## Exemplificação via POSTMAN - Hoteis
### GET
**url:** localhost:5000/hoteis
**Response:**
```json
{
"hoteis": [
{
"hotel_id": "delta",
"nome": "Delta Hotel",
"estrelas": 5.9,
"diaria": 720.0,
"cidade": "São Paulo"
},
{
"hotel_id": "charlie",
"nome": "Charlie Hotel",
"estrelas": 5.9,
"diaria": 720.0,
"cidade": "São Paulo"
}
]
}
```### GET Hotel by Id
**url:** localhost:5000/hoteis/{hotel_id}
**Response:**
```json
{
"hotel_id": "charlie",
"nome": "Charlie Hotel",
"estrelas": 5.9,
"diaria": 720.0,
"cidade": "São Paulo"
}
```### POST
**url:** localhost:5000/hoteis/{hotel_id}
**Auth:** Token = token_de_acesso
**Body:**
```json
{
"nome": "Charlie Hotel",
"estrelas": 5.9,
"diaria": 720.0,
"cidade": "São Paulo"
}
```
**Response:**
```json
{
"hotel_id": "charlie",
"nome": "Charlie Hotel",
"estrelas": 5.9,
"diaria": 720.0,
"cidade": "São Paulo"
}
```### PUT
**url:** localhost:5000/hoteis/{hotel_id}
**Auth:** Token = token_de_acesso
**Body:**
```json
{
"nome": "Charlie ALTERADO Hotel",
"estrelas": 4.9,
"diaria": 320.0,
"cidade": "São Paulo"
}
```
**Response:**
```json
{
"hotel_id": "charlie",
"nome": "Charlie ALTERADO Hotel",
"estrelas": 4.9,
"diaria": 320.0,
"cidade": "São Paulo"
}
```### DELETE
**url:** localhost:5000/hoteis/{hotel_id}
**Auth:** Token = token_de_acesso
**Response:**
```json
{
"resultado": "Hotel deletado!"
}
```