package main import ( "fmt" "net/http" "super-frpc/frpLogger" "super-frpc/utils" "super-frpc/postLog" "super-frpc/session" "super-frpc/handlers" ) func setupRoutes() { systemLogHandler := postLog.NewLogSocketHandler(postLog.GetLogBroadcaster()) http.HandleFunc("/system/getLogs", systemLogHandler.Handle) http.HandleFunc("/system/getStatus", GetStatusHandler) http.HandleFunc("/system/getSoftwareInfo", GetSoftwareInfoHandler) http.HandleFunc("/system/settings/get", handlers.GetSettingsHandler) http.HandleFunc("/system/settings/set", handlers.SetSettingsHandler) http.HandleFunc("/register", handlers.RegisterHandler) http.HandleFunc("/login", handlers.LoginHandler) http.HandleFunc("/logout", handlers.LogoutHandler) http.HandleFunc("/userMgr/create", handlers.CreateUserHandler) http.HandleFunc("/userMgr/remove", handlers.RemoveUserHandler) http.HandleFunc("/userMgr/list", handlers.ListUserHandler) http.HandleFunc("/userMgr/modify", handlers.ModifyUserHandler) http.HandleFunc("/userMgr/modifyType", handlers.ModifyUserTypeHandler) http.HandleFunc("/sessionMgr/list", handlers.ListActiveSessionsHandler) http.HandleFunc("/sessionMgr/remove", handlers.RemoveSessionHandler) http.HandleFunc("/frpcAct/instanceMgr/create", handlers.CreateInstanceHandler) http.HandleFunc("/frpcAct/instanceMgr/delete", handlers.DeleteInstanceHandler) http.HandleFunc("/frpcAct/instanceMgr/modify", handlers.ModifyInstanceHandler) http.HandleFunc("/frpcAct/instanceMgr/list", handlers.ListInstancesHandler) http.HandleFunc("/frpcAct/instanceMgr/start", handlers.StartInstanceHandler) http.HandleFunc("/frpcAct/instanceMgr/stop", handlers.StopInstanceHandler) http.HandleFunc("/frpcAct/instanceMgr/restart", handlers.RestartInstanceHandler) http.HandleFunc("/frpcAct/instanceMgr/status", handlers.GetInstanceStatusHandler) http.HandleFunc("/frpcAct/instanceMgr/getInfo", handlers.GetInstanceInfoHandler) http.HandleFunc("/frpcAct/instanceMgr/logs", frpLogger.NewInstanceLogHandler(session.ValidateTokenFromMap).ServeHTTP) http.HandleFunc("/frpcAct/proxyMgr/create", handlers.CreateProxyHandler) http.HandleFunc("/frpcAct/proxyMgr/modify", handlers.ModifyProxyHandler) http.HandleFunc("/frpcAct/proxyMgr/delete", handlers.DeleteProxyHandler) http.HandleFunc("/frpcAct/proxyMgr/list", handlers.ListProxiesHandler) http.HandleFunc("/", NotFoundHandler) postLog.Info("Routes setup successfully") } func NotFoundHandler(w http.ResponseWriter, r *http.Request) { postLog.Error(fmt.Sprintf("Route not found: %s %s", r.Method, r.URL.Path)) utils.SendErrorResponse(w, http.StatusNotFound, "Invalid request path") }