1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
package server
import (
"fmt"
"net/http"
"time"
)
func (srv *server) ListenToRequests() {
h := srv.actions
mux := http.NewServeMux()
server := &http.Server{
Addr: fmt.Sprintf("localhost:%s", srv.config.ServerConfig.Port),
Handler: h.GetSession(mux),
ReadTimeout: time.Second * 5,
WriteTimeout: time.Second * 5,
}
fs := http.FileServer(http.Dir("assets/"))
mux.Handle("GET /assets/", http.StripPrefix("/assets/", fs))
mux.HandleFunc("GET /ping", h.Ping)
mux.HandleFunc("GET /", h.MainPage)
mux.HandleFunc("POST /", h.HandleForm)
mux.HandleFunc("POST /done", h.HandleDoneAction)
mux.HandleFunc("POST /login", h.HandleLogin)
mux.HandleFunc("POST /signup", h.HandleSignup)
// ====== elements ======
mux.HandleFunc("GET /showform", h.ServeShowForm)
mux.HandleFunc("GET /hideform", h.ServeHideForm)
mux.HandleFunc("GET /recommendation", h.ShowRecommended)
mux.HandleFunc("GET /recommendation-hide", h.HideRecommended)
fmt.Println("Listening", "addr", server.Addr)
server.ListenAndServe()
}
|