refactor(router): remove all useless route
Remove dynamic path handling in favor of explicit route registration Update README.md with improved table formatting and updated TODO list
This commit is contained in:
46
router.go
46
router.go
@@ -2,7 +2,7 @@ package main
|
||||
|
||||
import (
|
||||
"net/http"
|
||||
"strings"
|
||||
|
||||
"super-frpc/postLog"
|
||||
)
|
||||
|
||||
@@ -26,47 +26,7 @@ func setupRoutes() {
|
||||
http.HandleFunc("/sessionMgr/remove", RemoveSessionHandler)
|
||||
|
||||
http.HandleFunc("/frpcAct/instanceMgr/create", CreateInstanceHandler)
|
||||
http.HandleFunc("/frpcAct/instanceMgr/delete", DeleteInstanceHandler)
|
||||
http.HandleFunc("/frpcAct/instanceMgr/modify", ModifyInstanceHandler)
|
||||
http.HandleFunc("/frpcAct/instanceMgr/list", ListInstancesHandler)
|
||||
|
||||
http.HandleFunc("/frpcAct/instanceMgr/", func(w http.ResponseWriter, r *http.Request) {
|
||||
path := r.URL.Path
|
||||
if len(path) < len("/frpcAct/instanceMgr/") { // Check if path is at least as long as the base path
|
||||
SendErrorResponse(w, http.StatusNotFound, "invalid path")
|
||||
return
|
||||
}
|
||||
|
||||
remainingPath := path[len("/frpcAct/instanceMgr/"):] // Get the remaining path after the base path
|
||||
|
||||
if r.Method == http.MethodGet { // Handle `/list` and `/list/<instanceName>` by GET request
|
||||
if remainingPath == "list" {
|
||||
ListInstancesHandler(w, r)
|
||||
return
|
||||
}
|
||||
|
||||
instanceName := strings.Trim(remainingPath, "/") // Get the instance name from the remaining path
|
||||
if instanceName != "" {
|
||||
ListInstancesHandler(w, r)
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
if r.Method == http.MethodPost { // Handle `/create`, `/delete`, and `/modify/<field>` by POST request
|
||||
if remainingPath == "create" {
|
||||
CreateInstanceHandler(w, r)
|
||||
return
|
||||
}
|
||||
|
||||
if remainingPath == "delete" {
|
||||
DeleteInstanceHandler(w, r)
|
||||
return
|
||||
}
|
||||
|
||||
if remainingPath == "modify" { // Handle `/modify` by POST request
|
||||
ModifyInstanceHandler(w, r)
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
SendErrorResponse(w, http.StatusNotFound, "endpoint not found") // Send error response if no endpoint is found
|
||||
})
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user