Los controladores públicos de la API (CategoryController y ProductController en V1) no utilizan Form Requests para validación de parámetros de consulta, lo que puede llevar a inconsistencias en validación y manejo de errores.
Problemas Identificados:
CategoryController::index() no valida parámetros de paginación
CategoryController::show() no valida el parámetro slug
ProductController::index() no valida parámetros de filtrado (category, search, sortBy, sortDirection, per_page)
ProductController::show() no valida el parámetro slug
- Validaciones realizadas directamente en controladores en lugar de Form Requests dedicados
Archivos Afectados:
app/Http/Controllers/Api/V1/CategoryController.php
app/Http/Controllers/Api/V1/ProductController.php
- Falta crear:
app/Http/Requests/Api/V1/ListCategoriesRequest.php
- Falta crear:
app/Http/Requests/Api/V1/ShowCategoryRequest.php
- Falta crear:
app/Http/Requests/Api/V1/ListProductsRequest.php
- Falta crear:
app/Http/Requests/Api/V1/ShowProductRequest.php
Solución Propuesta:
- Crear Form Requests para validar parámetros de consulta en endpoints públicos
- Implementar validaciones consistentes para filtros, ordenamiento y paginación
- Centralizar manejo de errores de validación
- Documentar parámetros válidos para cada endpoint
Prioridad: Baja - Funcionalidad actual es correcta pero falta consistencia en validación
Los controladores públicos de la API (CategoryController y ProductController en V1) no utilizan Form Requests para validación de parámetros de consulta, lo que puede llevar a inconsistencias en validación y manejo de errores.
Problemas Identificados:
CategoryController::index()no valida parámetros de paginaciónCategoryController::show()no valida el parámetro slugProductController::index()no valida parámetros de filtrado (category, search, sortBy, sortDirection, per_page)ProductController::show()no valida el parámetro slugArchivos Afectados:
app/Http/Controllers/Api/V1/CategoryController.phpapp/Http/Controllers/Api/V1/ProductController.phpapp/Http/Requests/Api/V1/ListCategoriesRequest.phpapp/Http/Requests/Api/V1/ShowCategoryRequest.phpapp/Http/Requests/Api/V1/ListProductsRequest.phpapp/Http/Requests/Api/V1/ShowProductRequest.phpSolución Propuesta:
Prioridad: Baja - Funcionalidad actual es correcta pero falta consistencia en validación