Heim >Backend-Entwicklung >Golang >Kann Go die Inplace-URL-Parameterzuordnung verarbeiten?

Kann Go die Inplace-URL-Parameterzuordnung verarbeiten?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-11-11 01:46:02371Durchsuche

Can Go Handle Inplace URL Parameter Mapping?

Inplace-URL-Parameter in Go

In Native Go fehlt ein grundlegender Mechanismus für die Inplace-URL-Parameterzuordnung. Die Implementierung einer solchen Funktion ist jedoch relativ einfach.

Benutzerdefinierte Lösung

Der folgende Ansatz basiert nicht auf externen Bibliotheken:

  1. Split den URL-Pfad (r.URL.Path) in Komponenten.
  2. Analysieren Sie jede Komponente:

    • Wenn die erste Komponente eine gültige Ganzzahl ist, behandeln Sie sie als URL-Parameter .
    • Gibt den Standardparameterwert (und die zweite Komponente) zurück, wenn kein Parameter gefunden wird oder der Parameter ungültig ist.

Codebeispiel

func getCode(r *http.Request, defaultCode int) (int, string) {
    p := strings.Split(r.URL.Path, "/")

    if len(p) == 1 {
        return defaultCode, p[0]
    } else if len(p) > 1 {
        code, err := strconv.Atoi(p[0])
        if err == nil {
            return code, p[1]
        } else {
            return defaultCode, p[1]
        }
    } else {
        return defaultCode, ""
    }
}

Dieser Code kann in Anforderungshandlern mit der Funktion getCode() aufgerufen werden.

Das obige ist der detaillierte Inhalt vonKann Go die Inplace-URL-Parameterzuordnung verarbeiten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn