LINE notificationを送信するにあたって、form dataで送信を行なったので、そのコードシェアしておきます
func (line LineNotification) send() {
token := ""
uri := "https://notify-api.line.me/api/notify"
data := url.Values{}
data.Set("message", line.Message)
client := &http.Client{}
req, _ := http.NewRequest("POST", uri, strings.NewReader(data.Encode()))
req.Header.Set("Authorization", fmt.Sprintf("Bearer %s", token))
req.Header.Add("Content-Type", "application/x-www-form-urlencoded")
req.Header.Add("Content-Length", strconv.Itoa(len(data.Encode())))
resp, err := client.Do(req)
if err != nil {
log.Fatal(err)
}
defer func() {
err := resp.Body.Close()
if err != nil {
log.Fatal(err)
}
}()
fmt.Print("Line message was sent")
}