[FIX] ISSUE-007: Fix sessions endpoint redirect (301)
- Added route without trailing slash: sessions.GET("", ...)
- Kept route with slash for compatibility: sessions.GET("/", ...)
- This prevents Gin from redirecting /sessions to /sessions/
- Updated REAL_ISSUES_TODOLIST.json with fix status
This commit is contained in:
parent
ec202b2064
commit
f8606c94c9
2 changed files with 10 additions and 7 deletions
|
|
@ -283,10 +283,12 @@
|
|||
"title": "Endpoint sessions redirige au lieu de retourner JSON",
|
||||
"priority": "P2",
|
||||
"priority_rank": 7,
|
||||
"status": "open",
|
||||
"status": "fixed",
|
||||
"fixed_at": "2025-12-26T15:35:00Z",
|
||||
"fix_description": "Ajout d'une route GET sans trailing slash (sessions.GET(\"\", ...)) en plus de la route avec slash pour éviter la redirection 301 de Gin",
|
||||
"blocking": false,
|
||||
"endpoint": "GET /api/v1/sessions",
|
||||
"test_command": "curl -X GET 'http://localhost:8080/api/v1/sessions'",
|
||||
"test_command": "curl -X GET 'http://localhost:8080/api/v1/sessions' -H 'Authorization: Bearer $TOKEN'",
|
||||
"expected_result": "HTTP 200 avec liste des sessions OU HTTP 401 si authentification requise",
|
||||
"actual_result": "HTTP 301 (Moved Permanently) vers /api/v1/sessions/ (avec trailing slash)",
|
||||
"error_message": "Redirection au lieu de réponse JSON",
|
||||
|
|
@ -294,11 +296,10 @@
|
|||
"http_code": 301,
|
||||
"user_impact": "L'endpoint redirige au lieu de retourner des données. Problème de configuration de route.",
|
||||
"tested_at": "2025-12-26T15:18:42Z",
|
||||
"root_cause": "Configuration de route incorrecte - trailing slash manquant ou en trop",
|
||||
"fix_suggestion": "Vérifier la configuration des routes dans le routeur pour gérer correctement les trailing slashes",
|
||||
"root_cause": "Configuration de route incorrecte - Gin redirige automatiquement /sessions vers /sessions/ si seule la route avec slash est définie",
|
||||
"fix_suggestion": "Ajouter les deux routes (avec et sans trailing slash) pour compatibilité",
|
||||
"files_to_check": [
|
||||
"veza-backend-api/cmd/api/main.go",
|
||||
"veza-backend-api/internal/router/router.go"
|
||||
"veza-backend-api/internal/api/router.go"
|
||||
],
|
||||
"estimated_hours": 0.5
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1251,7 +1251,9 @@ func (r *APIRouter) setupCoreProtectedRoutes(v1 *gin.RouterGroup) {
|
|||
{
|
||||
sessions.POST("/logout", sessionHandler.Logout())
|
||||
sessions.POST("/logout-all", sessionHandler.LogoutAll())
|
||||
sessions.GET("/", sessionHandler.GetSessions())
|
||||
// ISSUE-007: Ajouter route sans trailing slash pour éviter redirection 301
|
||||
sessions.GET("", sessionHandler.GetSessions())
|
||||
sessions.GET("/", sessionHandler.GetSessions()) // Garder aussi avec slash pour compatibilité
|
||||
sessions.DELETE("/:session_id", sessionHandler.RevokeSession())
|
||||
sessions.GET("/stats", sessionHandler.GetSessionStats())
|
||||
sessions.POST("/refresh", sessionHandler.RefreshSession())
|
||||
|
|
|
|||
Loading…
Reference in a new issue