Как работает сопоставление с образцом в Go Language?
Я пытаюсь понять, как работает сопоставление с образцом, используемое в http-пакетах Go. Например, я хотел бы написать обработчик для перенаправления веб-корня к чему-либо. Документация Go пакета http отправляет меня к документации servemux для получения подробной информации о сопоставлении с образцом, но:
- поиск в Google servemux подводит меня только к той же документации
- http://servemux.com/ дает едва ли какую-либо информацию о том, что это такое и как это работает
- Вики не знает, что такое servemux
Кто-нибудь лучше ссылки кто-нибудь?
1 ответ
Проверьте эту страницу для хорошего резюме: http://www.alexedwards.net/blog/a-recap-of-request-handling
Он включает в себя хорошие примеры, в том числе тот, который имеет отношение к тому, о чем вы спрашивали (перенаправление):
package main
import (
"log"
"net/http"
)
func main() {
mux := http.NewServeMux()
rh := http.RedirectHandler("http://example.org", 307)
mux.Handle("/foo", rh)
log.Println("Listening...")
http.ListenAndServe(":3000", mux)
}