Optionale Abfrageparameter in GET-Anfragen mit Gorilla Mux
Bei der Arbeit mit HTTP-GET-Anfragen in Gorilla Mux ist es oft wünschenswert, dies zu berücksichtigen optionale Abfrageparameter. Standardmäßig macht die Angabe eines Abfrageparameters in der Routendefinition (z. B. Queries("Benutzername", "{Benutzername}")) dessen Anwesenheit obligatorisch.
Das Problem
Wie in der Frage hervorgehoben, erfordert der bereitgestellte Code, dass in der Anfrage sowohl die Abfrageparameter „Benutzername“ als auch „E-Mail“ vorhanden sind. Voraussetzung ist jedoch die Flexibilität, einen oder beide Parameter bereitzustellen und optionale Abfragezeichenfolgen zu ermöglichen.
Die Lösung
Um dieses Problem zu beheben, sind die folgenden Schritte erforderlich empfohlen:
r.HandleFunc("/user", UserByValueHandler).Methods("GET")
func UserByValueHandler(w http.ResponseWriter, r *http.Request) { v := r.URL.Query() username := v.Get("username") email := v.Get("email") ..... }
Dieser Ansatz ermöglicht optionale Abfrageparameter . Wenn ein bestimmter Parameter in der Anfrage nicht angegeben wird, gibt v.Get() einen leeren String zurück, der im Code entsprechend behandelt werden kann.
Das obige ist der detaillierte Inhalt vonWie mache ich Abfrageparameter in Gorilla Mux GET-Anfragen optional?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!