l'éditeur php Strawberry est là pour vous présenter comment imprimer le chemin de l'url sans paramètres. Dans le développement Web, nous avons souvent besoin d'obtenir l'URL de la page actuelle et de supprimer la partie paramètre, ne laissant que la partie chemin. L’avantage est que cela peut rendre l’URL plus concise, et cela est également bénéfique pour l’optimisation du référencement. En PHP, nous pouvons implémenter cette fonction via un code simple. Ensuite, je présenterai en détail la méthode de mise en œuvre spécifique. Apprenons ensemble !
J'ai une API reposante utilisant gorilla/mux. Il est paramétré dans le chemin. Je l'ai créé comme ceci :
r := mux.NewRouter() subr := r.PathPrefix("/v1").Subrouter() subr.Handle("/organizations/{orgId}/projects/{projectId}", CreateProject()).Methods(http.MethodPost)
Cependant, lors de la capture de la demande et de l'enregistrement des résultats, je ne veux pas l'enregistrer
/组织/fff-555-aaa9999/projects/amazing-project
C'est ce que j'obtiens en analysant la valeur r *http.request.url
.
Au lieu de cela, je souhaite obtenir la valeur initiale du routeur de /organizations/{orgid}/projects/{projectid}
afin de pouvoir filtrer cela dans la journalisation.
En utilisant gorilla/mux, existe-t-il un moyen d'obtenir le chemin du routeur sans les paramètres réels, mais d'obtenir à la place les variables de paramètres ?
Dans la fonction createproject
, vous pouvez utiliser ceci :
func CreateProject(w http.ResponseWriter, r *http.Request) { path, _ := mux.CurrentRoute(r).GetPathTemplate() fmt.Println(path) }
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!