func handleDeleteJob(w http.ResponseWriter, r *http.Request) { token, err := ParseToken(r) if err != nil { WriteJsonErr(w, 401, err) return } matches := jobPat.FindStringSubmatch(r.URL.Path) if len(matches) < 2 || len(matches[1]) == 0 { WriteJsonErr(w, 400, errors.New("Job id not found.")) return } // Trim the forward slash that came from the url path. id := string(matches[1][1:]) if len(id) == 0 { WriteJsonErr(w, 400, errors.New("Job id not found.")) return } job := store.Job{Id: id, QueueId: token} if err := job.Delete(); err != nil { WriteJsonErr(w, 400, err) return } WriteJson(w, 200, job) }