Maison >développement back-end >Golang >Comment imprimer le chemin de l'URL sans paramètres ?

Comment imprimer le chemin de l'URL sans paramètres ?

王林
王林avant
2024-02-11 18:57:231203parcourir

Comment imprimer le chemin de lURL sans paramètres ?

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 !

Contenu de la question

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 ?

Solution

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!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer