【发布时间】:2018-10-25 18:59:27
【问题描述】:
我正在尝试通过 webhook 将我的 heroku 应用程序的更新发送到 Discord 频道。但是,传递尝试失败。我已经仔细检查了 Payload URL,它是正确的。不知道如何从这里开始。
【问题讨论】:
标签: node.js heroku webhooks discord
我正在尝试通过 webhook 将我的 heroku 应用程序的更新发送到 Discord 频道。但是,传递尝试失败。我已经仔细检查了 Payload URL,它是正确的。不知道如何从这里开始。
【问题讨论】:
标签: node.js heroku webhooks discord
Heroku 的 webhook 格式与 Discord 不兼容,因此您不能只将 Discord webhook URL 放入 Heroku。你需要一个中间人服务器来接收来自 Heroku 的事件,并构造相应的消息并将其发送到 Discord。
【讨论】:
如果无法查看您的代码和您正在使用的请求结构,将很难确定问题的确切来源,但您可能需要检查的一件事是您的发送方式JSON 负载 到 Discord webhook URL。
Discord 似乎不接受请求,除非您指定负载的主体为 JSON。我发现这一点是因为我目前正在开发一个应用程序。我知道这个答案在事后很重要,但它可能会帮助其他人!
【讨论】:
找到这个 JS 代码,应该可以工作(将 params 变量和它所说的 webhook 更改为你的 webhook url)
let x = new XMLHttpRequest();
x.open("POST", `<webhook link>`);
x.setRequestHeader('Content-type', 'application/json');
let params = {
username: "Webhook Bot",
content: "<message content as a string>"
}
x.send(JSON.stringify(params));
我应该提到,要提及频道而不是 #channel-name,您必须使用 <#channelid>,例如 <#1234567890> 而不是 #foo-bar
(这是我的第一篇文章,如果有点糟糕,请见谅)
【讨论】: