package login import ( "admin_dashboard_backend/pkg/db" "encoding/json" "log" "net/http" ) type Request struct { Username string `json:"username"` Password string `json:"password"` } type Response struct { Token string `json:"token"` } func HandlersLogin(w http.ResponseWriter, r *http.Request) { if r.Method != http.MethodPost { http.Error(w, "Method not allowed", http.StatusMethodNotAllowed) return } var request Request if err := json.NewDecoder(r.Body).Decode(&request); err != nil { http.Error(w, "Bad request", http.StatusBadRequest) return } token, err := db.Login(request.Username, request.Password) if err != nil { log.Println("Error logging in:", err) http.Error(w, "Internal server error", http.StatusInternalServerError) return } response := Response{ Token: token, } w.Header().Set("Content-Type", "application/json") json.NewEncoder(w).Encode(response) }