ailistener-old

The central Server which transports webhook events from the Dialogflow bot to the local nodes
git clone git://archive.git.mtrnord.blog/OpenHomeAuto/ailistener-old.git
Log | Files | Refs | README | LICENSE

commit d004cf74a84d663a1563ccbed76f55539b42da20
parent 35a430e97819cdd34a2f8faffc57338261e260db
Author: MTRNord <mtrnord1@gmail.com>
Date:   Sun,  3 Jun 2018 11:15:15 +0200

Measure needed time on old code

Diffstat:
MwsListener/server.go | 15++++-----------
1 file changed, 4 insertions(+), 11 deletions(-)

diff --git a/wsListener/server.go b/wsListener/server.go @@ -6,7 +6,6 @@ import ( df "github.com/OpenHomeAuto/dialogflow-go-webhook" "github.com/bjarneh/latinx" "github.com/gorilla/mux" - "io/ioutil" "log" "net/http" "time" @@ -27,7 +26,7 @@ func HomeHandler(w http.ResponseWriter, r *http.Request) { func DFHandler(w http.ResponseWriter, r *http.Request) { start := time.Now() - dfr := &df.Request{} + var dfr *df.Request if r.Body == nil { http.Error(w, "Please send a request body", http.StatusNotAcceptable) @@ -35,16 +34,10 @@ func DFHandler(w http.ResponseWriter, r *http.Request) { return } defer r.Body.Close() - body, err := ioutil.ReadAll(r.Body) - if err != nil { + decoder := json.NewDecoder(r.Body) + if err := decoder.Decode(&dfr); err != nil { http.Error(w, err.Error(), http.StatusInternalServerError) - log.Println("[WSERROR] failed to convert to byte: " + err.Error()) - return - } - err = dfr.UnmarshalJSON(body) - if err != nil { - http.Error(w, err.Error(), http.StatusInternalServerError) - log.Println("[WSERROR] failed to UnmarshalJSON: " + err.Error()) + log.Println("[WSERROR] failed to decode: " + err.Error()) return }