feat(profile): implement protected skin upload endpoint

This commit is contained in:
2025-06-16 07:20:09 +03:00
parent 9082b21a5d
commit 9c7940a70a
7 changed files with 186 additions and 9 deletions

View File

@@ -47,25 +47,28 @@ func main() {
r.Use(middleware.Logger)
r.Use(middleware.Recoverer)
// Группа маршрутов для Web API
// --- Публичные роуты ---
r.Route("/api", func(r chi.Router) {
r.Post("/register", userHandler.Register)
// Здесь будет публичный эндпоинт для логина в веб-интерфейс
})
// Группа маршрутов для Yggdrasil API
r.Route("/authserver", func(r chi.Router) {
r.Post("/authenticate", authHandler.Authenticate)
// Здесь будут другие эндпоинты: refresh, validate, signout, invalidate
})
// Группа маршрутов для Session Server API
r.Route("/sessionserver/session/minecraft", func(r chi.Router) {
r.Post("/join", authHandler.Join) // <-- ДОБАВЛЯЕМ ЭТОТ МАРШРУТ
r.Post("/join", authHandler.Join)
r.Get("/profile/{uuid}", profileHandler.GetProfile)
})
// Маршрут для проверки, что сервер жив
r.Get("/", func(w http.ResponseWriter, r *http.Request) {
w.Write([]byte("Backend server is running!"))
// --- Защищенные роуты ---
r.Group(func(r chi.Router) {
// Применяем нашу middleware ко всем роутам в этой группе
r.Use(api.AuthMiddleware)
r.Route("/api/user", func(r chi.Router) {
r.Post("/skin", profileHandler.UploadSkin)
// Здесь будут другие эндпоинты для управления профилем
})
})
log.Println("Starting backend server on :8080")