Как работает сопоставление с образцом в 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)
}
Другие вопросы по тегам