Heim >Backend-Entwicklung >Golang >Wie gehe ich mit optionalen URL-Variablen in Gorilla Mux um?
In Gorilla Mux können Sie optionale URL-Variablen definieren, indem Sie den Handler mit mehreren Pfaden registrieren.
Zum Beispiel Betrachten Sie die folgende Route:
func main() { r := mux.NewRouter() r.HandleFunc("/view/{id:[0-9]+}", MakeHandler(ViewHandler)) // Add a second handler for the optional URL variable r.HandleFunc("/view", MakeHandler(ViewHandler)) http.Handle("/", r) http.ListenAndServe(":8080", nil) }
Die erste Route gleicht URLs mit einer ganzzahligen ID-Variablen ab, während die zweite Route stimmt mit URLs ohne ID-Variable überein.
Überprüfen Sie beim Zugriff auf Variablen aus der Anfrage, ob die optionale Variable vorhanden ist:
vars := mux.Vars(r) id, ok := vars["id"] if !ok { // Directory listing or some other action without an ID return } // Specific view with the ID
Indem Sie den Handler zweimal registrieren, können Sie beide Szenarien bewältigen: URLs mit und ohne die optionale ID-Variable.
Das obige ist der detaillierte Inhalt vonWie gehe ich mit optionalen URL-Variablen in Gorilla Mux um?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!