Rumah > pembangunan bahagian belakang > Golang > Bagaimana untuk mencetak laluan url tanpa parameter?

Bagaimana untuk mencetak laluan url tanpa parameter?

王林
Lepaskan: 2024-02-11 18:57:23
ke hadapan
1209 orang telah melayarinya

Bagaimana untuk mencetak laluan url tanpa parameter?

editor php Strawberry di sini untuk memperkenalkan kepada anda cara mencetak laluan url tanpa parameter. Dalam pembangunan web, kita selalunya perlu mendapatkan URL halaman semasa dan mengalih keluar bahagian parameter, hanya meninggalkan bahagian laluan. Kelebihan ini ialah ia boleh menjadikan URL lebih ringkas, dan ia juga bermanfaat untuk pengoptimuman SEO. Dalam PHP, kita boleh melaksanakan fungsi ini melalui beberapa kod mudah. Seterusnya, saya akan memperkenalkan kaedah pelaksanaan khusus secara terperinci. Mari belajar bersama!

Kandungan soalan

Saya mempunyai api yang tenang menggunakan gorila/mux. Ia diparameterkan dalam laluan. Saya menciptanya seperti ini:

r := mux.NewRouter()
subr := r.PathPrefix("/v1").Subrouter()
subr.Handle("/organizations/{orgId}/projects/{projectId}", CreateProject()).Methods(http.MethodPost)
Salin selepas log masuk

Namun, apabila menangkap permintaan dan mencatat keputusan, saya tidak mahu log itu

/组织/fff-555-aaa9999/projects/amazing-project

Ini yang saya dapat dengan menghuraikan nilai r *http.request.url.

Sebaliknya, saya ingin mendapatkan nilai penghala awal /organizations/{orgid}/projects/{projectid} supaya saya boleh menapis itu dalam pengelogan.

Menggunakan gorila/mux, adakah terdapat cara untuk mendapatkan laluan penghala tanpa parameter sebenar, tetapi sebaliknya mendapatkan pembolehubah parameter?

Penyelesaian

Dalam fungsi createproject anda boleh menggunakan ini:

func CreateProject(w http.ResponseWriter, r *http.Request) {
    path, _ := mux.CurrentRoute(r).GetPathTemplate()
    fmt.Println(path)
}
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimana untuk mencetak laluan url tanpa parameter?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:stackoverflow.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan