So gehen Sie mit optionalen URL-Variablen mit Gorilla Mux um
Das Erstellen von Routen mit optionalen URL-Variablen kann in der Gorilla Mux-Bibliothek durchgeführt werden. Sehen wir uns an, wie es geht:
Aktuelles Setup und Problem:
Der bereitgestellte Code definiert eine Route, die eine ganzzahlige Variablen-ID in der URL erfordert, aber nicht in allen Szenarien Möglicherweise ist ein Ausweis erforderlich. Das Ziel besteht darin, dass die Route beide Fälle akzeptiert: mit und ohne die ID-Variable.
Lösung:
Um dies zu erreichen, registrieren Sie den Handler zweimal:
r.HandleFunc("/view", MakeHandler(ViewHandler)) r.HandleFunc("/view/{id:[0-9]+}", MakeHandler(ViewHandler))
Durch die Registrierung des Handlers beim Pfad/der Ansicht ohne Parameter kann die Route auch dann funktionieren, wenn keine Parameter vorhanden sind id.
Verarbeitung von Variablen:
Beim Abrufen von Variablen aus der Anfrage ist es wichtig, das Vorhandensein der ID-Variablen zu überprüfen:
vars := mux.Vars(r) id, ok := vars["id"] if !ok { // Directory listing or equivalent logic return } // Specific view logic
Wenn id in der Anfrage nicht vorhanden ist (d. h. /view wurde angefordert), ist die Variable „ok“ falsch und Sie können damit entsprechend umgehen (z. B. eine Verzeichnisliste anzeigen). Andernfalls steht der ID-Wert zur Verwendung im spezifischen Ansichtshandler zur Verfügung.
Das obige ist der detaillierte Inhalt vonWie gehe ich mit optionalen URL-Parametern in Gorilla Mux um?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!