From 1dc4bcc67dec50e2f58436ffbc7d61ca9da5b943 Mon Sep 17 00:00:00 2001 From: Harrison Date: Fri, 20 May 2016 09:18:01 +1000 Subject: [PATCH] Add "/" as default WebhookURL This is because an empty string is *invalid* in net/http and will yield a panic. --- messenger.go | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/messenger.go b/messenger.go index d87e183..b72f904 100644 --- a/messenger.go +++ b/messenger.go @@ -23,7 +23,7 @@ type Options struct { VerifyToken string // Token is the access token of the Facebook page to send messages from. Token string - // WebhookURL is where the Messenger client should listen for webhook events. + // WebhookURL is where the Messenger client should listen for webhook events. Leaving the string blank implies a path of "/". WebhookURL string } @@ -53,6 +53,10 @@ func New(mo Options) *Messenger { token: mo.Token, } + if mo.WebhookURL == "" { + mo.WebhookURL = "/" + } + m.verifyHandler = newVerifyHandler(mo.VerifyToken) m.mux.HandleFunc(mo.WebhookURL, m.handle) @@ -113,7 +117,7 @@ func (m *Messenger) handle(w http.ResponseWriter, r *http.Request) { err := json.NewDecoder(r.Body).Decode(&rec) if err != nil { - fmt.Println(err) + fmt.Println("could not decode response:", err) fmt.Fprintln(w, `{status: 'not ok'}`) return }