From 52686d369c294d8dcd0143ad1dac0877ef444925 Mon Sep 17 00:00:00 2001 From: Pierre-Olivier Mercier Date: Wed, 17 Oct 2018 16:27:37 +0200 Subject: [PATCH] Use W3C Fetch API instead of hacky JS --- main.go | 45 ++++++++++----------------------------------- 1 file changed, 10 insertions(+), 35 deletions(-) diff --git a/main.go b/main.go index f8d1c3e..77633b9 100644 --- a/main.go +++ b/main.go @@ -79,7 +79,15 @@ function disp(rendus) { - + `)) @@ -99,35 +107,13 @@ func genStudents() map[string]map[string]*Submission { func ServeJSON(w http.ResponseWriter, r *http.Request) { log.Printf("Handling %s request from %s: %s [%s]\n", r.Method, r.RemoteAddr, r.URL.Path, r.UserAgent()) - q := r.URL.Query() - varname := q.Get("var") - funcname := q.Get("func") - - if funcname == "" && varname == "" { - w.Header().Set("Content-Type", "application/json") - } else { - w.Header().Set("Content-Type", "application/javascript") - } + w.Header().Set("Content-Type", "application/json") if j, err := json.Marshal(genStudents()); err != nil { http.Error(w, fmt.Sprintf("{errmsg:%q}", err), http.StatusInternalServerError) } else { w.WriteHeader(http.StatusOK) - if varname != "" { - w.Write([]byte("var ")) - w.Write([]byte(varname)) - w.Write([]byte(" = ")) - } - if funcname != "" { - w.Write([]byte(funcname)) - w.Write([]byte("(")) - } w.Write(j) - if funcname != "" { - w.Write([]byte(")")) - } else if varname != "" { - w.Write([]byte(";")) - } } } @@ -166,22 +152,11 @@ func ServeJSONStudent(w http.ResponseWriter, r *http.Request) { login := strings.TrimSuffix(strings.TrimPrefix(r.URL.Path, "/"), ".json") - q := r.URL.Query() - varname := q.Get("var") - if j, err := json.Marshal(genStudent(login)); err != nil { http.Error(w, fmt.Sprintf("{errmsg:%q}", err), http.StatusInternalServerError) } else { w.WriteHeader(http.StatusOK) - if varname != "" { - w.Write([]byte("var ")) - w.Write([]byte(varname)) - w.Write([]byte(" = ")) - } w.Write(j) - if varname != "" { - w.Write([]byte(";")) - } } }