diff --git a/pkg/web/web.go b/pkg/web/web.go index 106db981e4..03ecab1a51 100644 --- a/pkg/web/web.go +++ b/pkg/web/web.go @@ -119,12 +119,14 @@ func handleService(w http.ResponseWriter, r *http.Request) { err = json.Unmarshal(bodyData, &webCall) if err != nil { http.Error(w, fmt.Sprintf("invalid request body: %v", err), http.StatusBadRequest) + return } rtn := service.CallService(r.Context(), webCall) jsonRtn, err := json.Marshal(rtn) if err != nil { http.Error(w, fmt.Sprintf("error serializing response: %v", err), http.StatusInternalServerError) + return } w.Header().Set(ContentTypeHeaderKey, ContentTypeJson) w.Header().Set(ContentLengthHeaderKey, fmt.Sprintf("%d", len(jsonRtn))) @@ -157,6 +159,7 @@ func handleWaveFile(w http.ResponseWriter, r *http.Request) { offset, err = strconv.ParseInt(offsetStr, 10, 64) if err != nil { http.Error(w, fmt.Sprintf("invalid offset: %v", err), http.StatusBadRequest) + return } } if _, err := uuid.Parse(zoneId); err != nil { @@ -180,6 +183,7 @@ func handleWaveFile(w http.ResponseWriter, r *http.Request) { jsonFileBArr, err := json.Marshal(file) if err != nil { http.Error(w, fmt.Sprintf("error serializing file info: %v", err), http.StatusInternalServerError) + return } // can make more efficient by checking modtime + If-Modified-Since headers to allow caching dataStartIdx := file.DataStartIdx() @@ -239,6 +243,7 @@ func handleLocalStreamFile(w http.ResponseWriter, r *http.Request, path string, path, err := wavebase.ExpandHomeDir(path) if err != nil { http.Error(w, err.Error(), http.StatusBadRequest) + return } http.ServeFile(w, r, path) }