func main() {
mux := http.NewServeMux()
mux.HandleFunc("GET /path/", func(w http.ResponseWriter, r *http.Request) {
fmt.Fprint(w, "got path\n")
})
mux.HandleFunc("/task/{id}/", func(w http.ResponseWriter, r *http.Request) {
id := r.PathValue("id")
fmt.Fprintf(w, "handling task with id=%v\n", id)
})
http.ListenAndServe("localhost:8090", mux)
}
И тут однозначно в выигрыше те, кто уже сидел на простых и, самое главное, максимально совместимых с net/http роутерах типа того же chi. Ведь по идее все уже написанные под net/http миддлвари и прочие инструменты должны спокойно встать и на рельсы нового роутера. Здесь же можно ожидать в будущем широкой поддержки во всех средах разработки.Выглядит использование нового роутера всё ещё очень «по-гошному», а я всё ещё нежно люблю Echo. Но кажется, пришла пора с ним потихоньку прощаться. Я точно буду пробовать новинку в своих нерабочих проектах — в рабочих у меня сплошной gRPC.
P.S. Новость и сниппет я утащил из блога Eli Bendersky — горячо рекомендую, там часто очень годные посты.
❤ • ютуб • бусти • патреон • платный канал