首頁 >後端開發 >Golang >如何列印不帶參數的url路徑?

如何列印不帶參數的url路徑?

王林
王林轉載
2024-02-11 18:57:231203瀏覽

如何列印不帶參數的url路徑?

php小編草莓在這裡為大家介紹如何列印不含參數的url路徑。在web開發中,我們經常需要取得目前頁面的url,並且去除掉其中的參數部分,只保留路徑部分。這樣做的好處是可以讓url更簡潔,同時也有利於SEO優化。在PHP中,我們可以透過一些簡單的程式碼來實現這個功能。接下來,我將為大家詳細介紹具體的實作方法。讓我們一起來學習吧!

問題內容

我有一個使用 gorilla/mux 的 restful api。它在路徑中被參數化。我這樣創建它:

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

但是,當捕獲請求並記錄結果時,我不想記錄,即

/組織/fff-555-aaa9999/projects/amazing-project

#這是我透過解析 r *http.request.url 值得到的結果。

相反,我想取得 /organizations/{orgid}/projects/{projectid} 的初始路由器值,以便我可以在日誌記錄中過濾

使用gorilla/mux,有沒有辦法在沒有實際參數的情況下取得路由器路徑,而是取得參數變數?

解決方法

createproject 函數中你可以使用這個:

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

以上是如何列印不帶參數的url路徑?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:stackoverflow.com。如有侵權,請聯絡admin@php.cn刪除