Как сопоставить ту же функцию с шаблоном, оканчивающимся на «/» с http.HandleFunc - PullRequest
2 голосов
/ 11 февраля 2020

Я использую golang net / http function http.HandleFunc, чтобы связать шаблон URL с функцией.

Я хотел бы знать, есть ли что-то лучше, чем делать

http.HandleFunc("/foo", fooFunc)
http.HandleFunc("/foo/", fooFunc)
http.HandleFunc("/bar", barFunc)
http.HandleFunc("/bar/", barFunc)

для соответствия fooFun c обоим "/ foo" и "/ foo /" конечных точек и т. Д. Для bar .

В качестве бонуса, как я могу ограничить забаву foo c только для GET запросов.

(Спасибо!)

1 Ответ

2 голосов
/ 12 февраля 2020

Лучшее решение: просто зарегистрируйте один путь с конечным sla sh, а другой получите «бесплатно».

Цитирование из http.ServeMux:

Если поддерево было зарегистрировано и получен запрос с именем поддерева root без его конечного sla sh, ServeMux перенаправляет этот запрос на поддерево root (добавляя конечный sla sh) .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...