Maison > développement back-end > Golang > le corps du texte

Comment gérer les paramètres d'URL facultatifs dans Gorilla Mux ?

Mary-Kate Olsen
Libérer: 2024-11-27 02:17:12
original
425 Les gens l'ont consulté

How to Handle Optional URL Parameters in Gorilla Mux?

Comment gérer les variables d'URL facultatives avec Gorilla Mux

La création d'itinéraires avec des variables d'URL facultatives peut être réalisée dans la bibliothèque Gorilla Mux. Explorons comment procéder :

Configuration et problème actuels :

Le code fourni définit une route qui nécessite un identifiant de variable entière dans l'URL, mais pas tous les scénarios. peut nécessiter une pièce d’identité. Le but est de faire en sorte que la route accepte les deux cas : avec et sans la variable id.

Solution :

Pour y parvenir, enregistrez le gestionnaire deux fois :

r.HandleFunc("/view", MakeHandler(ViewHandler))
r.HandleFunc("/view/{id:[0-9]+}", MakeHandler(ViewHandler))
Copier après la connexion

En enregistrant le gestionnaire avec le chemin /view sans aucun paramètre, cela permet à la route de fonctionner même lorsqu'il n'y a pas de id.

Gestion des Vars :

Lors de la récupération des variables de la requête, il est essentiel de vérifier la présence de la variable id :

vars := mux.Vars(r)
id, ok := vars["id"]
if !ok {
    // Directory listing or equivalent logic
    return
}
// Specific view logic
Copier après la connexion

Si l'identifiant n'est pas présent dans la requête (c'est-à-dire que /view a été demandé), la variable ok sera fausse et vous pourrez la gérer de manière appropriée (par exemple, afficher une liste d'annuaire). Sinon, la valeur id peut être utilisée dans le gestionnaire de vue spécifique.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal