Posts

Showing posts from March, 2025

Gt

Client (Angular) API Gateway (Go) Database (PostgreSQL) ↑ JWT Auth - /cmd/api - /internal - /handlers - /models - /middleware - /config - /migrations - /pkg - /auth CREATE TABLE users ( id UUID PRIMARY KEY, email VARCHAR(255) UNIQUE NOT NULL, password_hash VARCHAR(255) NOT NULL, role VARCHAR(20) CHECK (role IN ('admin', 'user', 'company')) NOT NULL, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ); CREATE TABLE vehicles ( id UUID PRIMARY KEY, user_id UUID REFERENCES users(id), make VARCHAR(255) NOT NULL, model VARCHAR(255) NOT NULL, year INTEGER NOT NULL, vin VARCHAR(17) UNIQUE, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ); package middleware import ( "github.com/gin-gonic/gin" "github.com/golang-jwt/jwt/v4" ) func AuthMiddleware() gin.HandlerFunc { return func(c *gin.Context) { tokenString := c.GetHeader(...