Ich verwende die Slack Web API, um Nachrichten an einen Kanal in Go zu senden. Ich versuche, mehrzeilige Nachrichten im Textfeld zu unterstützen. Laut der Dokumentation sollte einfach ein \ n funktionieren, aber es funktioniert nicht. Bei der Veröffentlichung erscheint \ n im Text und es gibt keinen Zeilenumbruch.Slack API Die Verwendung von n für neue Zeilen funktioniert nicht in chat.postMessage (golang)
Hier ist der Code, den ich mit:
func PostMessage(token, channelName, userName, text string) error {
uv := url.Values{}
uv.Add("token", token)
uv.Add("channel", channelName)
uv.Add("username", userName)
uv.Add("text", text)
resp, err := http.PostForm("https://slack.com/api/chat.postMessage", uv)
if err != nil {
return err
}
return nil
}
func main() {
if err := PostMessage("xxxx", "#test-channel", "API", "This should be the first line\nThis should be the second line"); err != nil {
panic(err)
}
}
Was passiert, wenn Sie ein [Raw-String-Literal] (https://stackoverflow.com/questions/7933460/how-do-you-write-multiline-strings-in-go) verwenden? – BlueSpaceCanary
Sie senden nicht die zwei Zeichen "\" und "n", Sie senden einen buchstabengetreuen Zeilenumbruch. – JimB
Warum benutzen Sie 'github.com/nlopes/slack' nicht? – user1529891