package main import ( "bytes" "fmt" "github.com/gorilla/mux" "io/ioutil" "net/http" ) const ( baseColour = "#555" modifier float64 = 0.2 maxValue = 220 blue = 55 ) func main() { //_ := template.New("svgConv") //percentage := 0.999 //fill := percentageToRGB(percentage) //_ := CoveragePill{ // fmt.Sprintf("%.1f", toFixed(percentage, 3)*100), // baseColour, // fill, //} r := mux.NewRouter() r.HandleFunc("/upload/go", upload) _ = http.ListenAndServe(":8080", r) } func upload(w http.ResponseWriter, r *http.Request) { if r.Method != "POST" { return } err := r.ParseForm() if err != nil { http.Error(w, "Request parameters not parsed", 500) return } err = r.ParseMultipartForm(5 << 20) if err != nil { http.Error(w, "Request parameters not parsed", 500) return } form := r.Form project := form.Get("project") tag := form.Get("tag") id := form.Get("id") file, _, err := r.FormFile("file") b, _ := ioutil.ReadAll(file) n := bytes.Index(b, []byte{0}) content := string(b[n]) fmt.Print(content) if project == "" || tag == "" || id == "" { http.Error(w, "Request parameters [secret, project, tag, id] not found", 400) return } _, _ = fmt.Fprintf(w, "project: '%s'\ntag: '%s'\nid: '%s'\n", project, tag, id) }