// postTemplate func postTemplate(rw http.ResponseWriter, req *http.Request) { dump, err := httputil.DumpRequestOut(req, true) if err != nil { fmt.Println("BOINK!", err.Error()) } fmt.Println(` Request: -------------------------------------------------------------------------------- ` + string(dump)) // read the request body b, err := ioutil.ReadAll(req.Body) if err != nil { fmt.Println("READ ALL ERR!", err.Error()) return } defer req.Body.Close() fmt.Println("BODY?", string(b)) // create a new template t := models.Template{} if err := json.Unmarshal(b, &t); err != nil { fmt.Println("MARSHALL ERR!", err.Error()) return } fmt.Printf("TEMPLATE?? %#v\n", t) // register the template (write it to the database) id, err := t.Register() if err != nil { fmt.Println("BONK!", err.Error()) return } fmt.Println("Registered template", id) }