12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- package srv
- import (
- "net/http"
- "git.clearsky.net.au/cody/gex.git/utils"
- )
- var rtr *http.ServeMux
- /*
- Our Special HandleFunc
- */
- func Route(pattern string, handler func(req *Req, res *Res)) {
- realHandler := func(w http.ResponseWriter, r *http.Request) {
- var req Req
- var res Res
- req.Construct(r)
- res.Construct(w, r)
- // run middleware on each request
- for _, fun := range middleware {
- err := fun(&req, &res)
- if err != nil {
- utils.Err(err)
- return
- }
- }
- handler(&req, &res)
- }
- rtr.HandleFunc(pattern, realHandler)
- }
- func InitRouter() {
- rtr = http.NewServeMux()
- // Public Files
- fs := http.FileServer(http.Dir("app/pub"))
- rtr.Handle("GET /app/pub/", http.StripPrefix("/app/pub/", fs))
- }
|