package main import ( "fmt" "net/http" "super-frpc/frpLogger" "super-frpc/handlers" "super-frpc/instance" "super-frpc/postLog" "super-frpc/session" "super-frpc/user" ) func setupRoutes() { http.HandleFunc("/system/getStatus", GetStatusHandler) http.HandleFunc("/system/getSoftwareInfo", GetSoftwareInfoHandler) systemLogHandler := postLog.NewLogSocketHandler(postLog.GetLogBroadcaster()) http.HandleFunc("/system/getLogs", systemLogHandler.Handle) http.HandleFunc("/register", user.RegisterHandler) http.HandleFunc("/login", user.LoginHandler) http.HandleFunc("/logout", user.LogoutHandler) http.HandleFunc("/userMgr/create", user.CreateUserHandler) http.HandleFunc("/userMgr/remove", user.RemoveUserHandler) http.HandleFunc("/userMgr/list", user.ListUserHandler) http.HandleFunc("/userMgr/modify", user.ModifyUserHandler) http.HandleFunc("/userMgr/modifyType", user.ModifyUserTypeHandler) http.HandleFunc("/sessionMgr/list", user.ListActiveSessionsHandler) http.HandleFunc("/sessionMgr/remove", user.RemoveSessionHandler) http.HandleFunc("/frpcAct/instanceMgr/create", instance.CreateInstanceHandler) http.HandleFunc("/frpcAct/instanceMgr/delete", instance.DeleteInstanceHandler) http.HandleFunc("/frpcAct/instanceMgr/modify", instance.ModifyInstanceHandler) http.HandleFunc("/frpcAct/instanceMgr/list", instance.ListInstancesHandler) http.HandleFunc("/frpcAct/instanceMgr/start", instance.StartInstanceHandler) http.HandleFunc("/frpcAct/instanceMgr/stop", instance.StopInstanceHandler) http.HandleFunc("/frpcAct/instanceMgr/restart", instance.RestartInstanceHandler) http.HandleFunc("/frpcAct/instanceMgr/status", instance.GetInstanceStatusHandler) http.HandleFunc("/frpcAct/instanceMgr/getInfo", instance.GetInstanceInfoHandler) http.HandleFunc("/frpcAct/instanceMgr/logs", frpLogger.NewInstanceLogHandler(session.ValidateTokenFromMap).ServeHTTP) http.HandleFunc("/frpcAct/proxyMgr/create", instance.CreateProxyHandler) http.HandleFunc("/frpcAct/proxyMgr/modify", instance.ModifyProxyHandler) http.HandleFunc("/frpcAct/proxyMgr/delete", instance.DeleteProxyHandler) http.HandleFunc("/frpcAct/proxyMgr/list", instance.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)) handlers.SendErrorResponse(w, http.StatusNotFound, "Invalid request path") }