Rumah >pembangunan bahagian belakang >Golang >Bagaimana untuk Mengendalikan Parameter URL Pilihan dalam Gorilla Mux?

Bagaimana untuk Mengendalikan Parameter URL Pilihan dalam Gorilla Mux?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-11-27 02:17:12515semak imbas

How to Handle Optional URL Parameters in Gorilla Mux?

Cara Mengendalikan Pembolehubah URL Pilihan dengan Gorilla Mux

Mencipta laluan dengan pembolehubah URL pilihan boleh dicapai dalam pustaka Gorilla Mux. Mari terokai cara melakukannya:

Persediaan dan Isu Semasa:

Kod yang disediakan mentakrifkan laluan yang memerlukan id pembolehubah integer dalam URL, tetapi bukan semua senario mungkin memerlukan id. Matlamatnya adalah untuk menjadikan laluan menerima kedua-dua kes: dengan dan tanpa pembolehubah id.

Penyelesaian:

Untuk mencapai ini, daftarkan pengendali dua kali:

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

Dengan mendaftarkan pengendali dengan laluan /view tanpa sebarang parameter, ia membolehkan laluan berfungsi walaupun tiada id.

Mengendalikan Vars:

Apabila mendapatkan semula pembolehubah daripada permintaan, adalah penting untuk menyemak kehadiran pembolehubah id:

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

Jika id tidak ada dalam permintaan (iaitu, /view diminta), pembolehubah ok akan menjadi palsu, dan anda boleh mengendalikannya dengan sewajarnya (cth., paparkan senarai direktori). Jika tidak, nilai id tersedia untuk digunakan dalam pengendali paparan khusus.

Atas ialah kandungan terperinci Bagaimana untuk Mengendalikan Parameter URL Pilihan dalam Gorilla Mux?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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