В Go вы можете использовать пакет net/http
для создания веб-сервера и отправки HTTP-ответа с HTML-контентом.
Первым шагом для вывода HTML-страницы в Go является создание обработчика HTTP, который будет принимать запросы и отправлять ответы. Обработчик HTTP - это функция, которая принимает два аргумента: http.ResponseWriter
и *http.Request
.
Для создания простейшего веб-сервера, давайте создадим функцию обработчика helloHandler
, которая будет отправлять простую HTML-страницу в ответ на все HTTP-запросы:
func helloHandler(w http.ResponseWriter, r *http.Request) { html := ` <!DOCTYPE html> <html> <head> <title>Hello</title> </head> <body> <h1>Hello, World!</h1> </body> </html> ` fmt.Fprint(w, html) }
В этом примере мы использовали многобуквенную строку для сохранения HTML-кода страницы. Затем мы использовали функцию fmt.Fprint
, чтобы отправить HTML-код в http.ResponseWriter
.
Далее, создадим основную функцию, которая будет запускать сервер и настраивать обработчик запросов:
func main() { http.HandleFunc("/", helloHandler) http.ListenAndServe(":8080", nil) }
В этом примере мы вызвали http.HandleFunc
с путь /
и функцией helloHandler
. При получении запроса на этот путь, сервер будет вызывать helloHandler
и отправлять HTML-страницу в ответ.
Для запуска сервера мы использовали http.ListenAndServe(":8080", nil)
. Сервер будет слушать все входящие запросы на порту 8080.
Теперь, когда мы запускаем эту программу, она создаст веб-сервер, который будет выводить HTML-страницу с сообщением "Hello, World!" при обращении к любому URL на порту 8080.
Это простейший пример вывода HTML-страницы в Go, и вы можете расширить его, добавив дополнительный HTML-код, CSS, JavaScript и другие функции, которые вам необходимы для вашего приложения.