package main import ( "encoding/json" "github.com/gorilla/mux" "log" "net/http" ) func handleEntry(w http.ResponseWriter, r *http.Request) { var entry Entry err := json.NewDecoder(r.Body).Decode(&entry) if err != nil { http.Error(w, err.Error(), http.StatusBadRequest) return } err = InsertEntry(&entry) if err != nil { http.Error(w, err.Error(), http.StatusInternalServerError) return } } func handleRequests() { router := mux.NewRouter() router.HandleFunc("/entry", handleEntry).Methods("POST") log.Fatal(http.ListenAndServe(":8080", router)) } func main() { log.Println("Starting up") InitEntries() defer CloseEntries() handleRequests() }