diff --git a/slack.go b/slack.go index 80cb31f..a6e1a74 100644 --- a/slack.go +++ b/slack.go @@ -3,6 +3,7 @@ package main import ( "encoding/json" "fmt" + "strings" "github.com/gofiber/fiber/v2" "github.com/slack-go/slack" @@ -13,8 +14,11 @@ import ( ) func HandleSlackPayloadPost(c *fiber.Ctx) error { + body := string(c.Body()) + body = strings.ReplaceAll(body, "\n", "\\n") + payload := slack.WebhookMessage{} - if err := c.BodyParser(&payload); err != nil { + if err := json.Unmarshal([]byte(body), &payload); err != nil { fmt.Println("Failed to parse payload", string(c.Body()), err) return err }