【问题标题】:Discord Webhook Message cannnot sendDiscord Webhook 消息无法发送
【发布时间】:2020-03-20 03:59:06
【问题描述】:

所以我有一段时间以前有人发布的这段代码。它已经完美运行了一年。它采用 google 形式的答案并将它们作为 webhook 发布到不和谐频道。现在从昨天开始,它不再工作了。脚本没有任何改变。

function onSubmit(e) {
    var form = FormApp.getActiveForm();
    var POST_URL = "****";
    var allResponses = form.getResponses();
    var latestResponse = allResponses[allResponses.length - 1];
    var response = latestResponse.getItemResponses();
    var items = [];

    for (var i = 0; i < response.length; i++) {
        var question = response[i].getItem().getTitle();
        var answer = response[i].getResponse();
        try {
            var parts = answer.match(/[\s\S]{1,1024}/g) || [];
        } catch (e) {
            var parts = answer;
        }

        if (answer == "") {
            continue;
        }
        for (var j = 0; j < parts.length; j++) {
            if (j == 0) {
                items.push({
                    "name": question,
                    "value": parts[j],
                    "inline": false
                });
            } else {
                items.push({
                    "name": question.concat(" (cont.)"),
                    "value": parts[j],
                    "inline": false
                });
            }
        }
    }

    var options = {
        "method":"POST",
        "payload": JSON.stringify({
          "content":"Hello, World!",

           "embeds":[{
                "title":"War Times Form",
                "fields":items,
                "footer":{
                    "text":"***Please verify these are Correct***"
                }
            }] 
        })
                                 };
Logger.log("[METHOD] onFormSubmit");
  Logger.log(items);
  Logger.log(options);
  var response = UrlFetchApp.fetch(POST_URL, options);
  Logger.log(response);
};

这就是日志记录的提交

[19-11-24 10:13:28:400 PST] {method=POST, payload={"content":"Hello, World!","embeds":[{"title":"War Times Form","fields":[{"name":"Post your clan name:","value":"fds","inline":false},{"name":"Post your name","value":"fds","inline":false},{"name":"Clan that you are declaring against:","value":"dfsa","inline":false},{"name":"Days and times your group is available was HQ fight (must be in EST):","value":"sdaf","inline":false}],"footer":{"text":"***Please verify these are Correct***"}}]}}

但是,我不断收到此错误:

https://discordapp.com 的请求失败,返回代码 400。截断的服务器响应:{"message": "Cannot send an empty message", "code": 50006}(使用 muteHttpExceptions 选项检查完整响应) 在 onSubmit(代码:54)

任何人都可以给我的任何帮助都会很棒。我已尝试联系不和谐支持,但他们不会作为其 API/Dev 提供帮助

【问题讨论】:

    标签: javascript discord webhooks


    【解决方案1】:

    因此发现答案必须添加到通过请求发送的选项中。 Discord 显然改变了它,并没有告诉任何人你必须声明它

    "contentType" : "application/json",

    【讨论】:

    • 就是这样,谢谢。不敢相信他们刚刚破坏了几乎所有现有的 webhook,这些 webhook 没有在没有通知的情况下发送内容类型
    猜你喜欢
    • 2019-03-05
    • 2021-03-02
    • 2019-10-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-29
    • 2021-07-06
    • 2019-01-16
    相关资源
    最近更新 更多