首頁 > 後端開發 > Golang > 主體

如何處理 Gorilla Mux 中的可選 URL 參數?

Mary-Kate Olsen
發布: 2024-11-27 02:17:12
原創
426 人瀏覽過

How to Handle Optional URL Parameters in Gorilla Mux?

如何使用 Gorilla Mux 處理可選 URL 變數

可以在 Gorilla Mux 函式庫中實作使用選用 URL 變數建立路由。讓我們探討如何做到這一點:

當前設定和問題:

提供的程式碼定義了一個需要在URL 中包含整數變數id 的路由,但並非所有場景可能需要一個id。目標是讓路由接受兩種情況:有 id 變數和沒有 id 變數。

解決方案:

要實現此目的,請註冊處理程序兩次:

r.HandleFunc("/view", MakeHandler(ViewHandler))
r.HandleFunc("/view/{id:[0-9]+}", MakeHandler(ViewHandler))
登入後複製

透過在沒有任何參數的情況下使用路徑/view註冊處理程序,即使沒有任何參數,它也允許路由工作id.

處理變數:

從請求中檢索變數時,必須檢查id 變數是否存在:

vars := mux.Vars(r)
id, ok := vars["id"]
if !ok {
    // Directory listing or equivalent logic
    return
}
// Specific view logic
登入後複製

如果請求中不存在id(即請求了/view),則ok 變數將為false,並且您可以適當地處理它(例如,顯示目錄列表)。否則,id 值可在特定視圖處理程序中使用。

以上是如何處理 Gorilla Mux 中的可選 URL 參數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板