| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- package main
- import (
- "fmt"
- "net/http"
- )
- // Обработчик HTTP-запросов
- func handler(w http.ResponseWriter, r *http.Request) {
- fmt.Println(r.Method) // Тип метода
- fmt.Println(r.URL) // запрашиваемый URL
- // fmt.Println(r.Proto) // версия протокола
- w.Write([]byte("Hello!"))
- }
- func main() {
- // Регистрируем обработчик для пути "/"
- http.HandleFunc("/", handler)
- // Запускаем веб-сервер на порту 8080
- err := http.ListenAndServe(":8080", nil)
- if err != nil {
- fmt.Println("Ошибка запуска сервера:", err)
- }
- }
- func handleRequest(w http.ResponseWriter, r *http.Request) {
- // В зависимости от метода HTTP-запроса вызываем соответствующий обработчик
- switch r.Method {
- case http.MethodGet:
- handleGET(w, r)
- case http.MethodPost:
- handlePOST(w, r)
- case http.MethodPut:
- handlePUT(w, r)
- case http.MethodDelete:
- handleDELETE(w, r)
- default:
- http.Error(w, "Метод не поддерживается", http.StatusMethodNotAllowed)
- }
- }
- // Обработчик для GET-запросов
- func handleGET(w http.ResponseWriter, r *http.Request) {
- fmt.Fprintln(w, "Это GET-запрос!")
- }
- // Обработчик для POST-запросов
- func handlePOST(w http.ResponseWriter, r *http.Request) {
- fmt.Fprintln(w, "Это POST-запрос!")
- }
- // Обработчик для PUT-запросов
- func handlePUT(w http.ResponseWriter, r *http.Request) {
- fmt.Fprintln(w, "Это PUT-запрос!")
- }
- // Обработчик для DELETE-запросов
- func handleDELETE(w http.ResponseWriter, r *http.Request) {
- fmt.Fprintln(w, "Это DELETE-запрос!")
- }
|