File 如何使用Google Apps脚本和Discord Webhook将图像上传到Discord?

File 如何使用Google Apps脚本和Discord Webhook将图像上传到Discord?,file,google-apps-script,upload,multipartform-data,discord,File,Google Apps Script,Upload,Multipartform Data,Discord,我编写了以下脚本: function uploadImageToDiscord() { var link = "https://i.imgur.com/image.jpg"; var img = UrlFetchApp.fetch(link).getBlob(); var discordUrl = "https://discordapp.com/api/webhooks/mywebhook"; var payload = { "file": img };

我编写了以下脚本:

function uploadImageToDiscord() {

  var link = "https://i.imgur.com/image.jpg";
  var img = UrlFetchApp.fetch(link).getBlob();

  var discordUrl = "https://discordapp.com/api/webhooks/mywebhook";

  var payload = {
    "file": img
  };

  var params = {
    headers: {
        "Content-Type": "multipart/form-data"
    },
    method: "post",
    payload: payload,
    muteHttpExceptions: true
  };

  var response = UrlFetchApp.fetch(discordUrl, params);

  Logger.log(response.getContentText());

}
然而,GAS告诉我,我试图发送一条空消息。有人能帮我吗

该错误必须与我尝试下载图像的方式有关:

var img = UrlFetchApp.fetch(link).getBlob();
或者我如何定义多部分/表单数据内容的有效负载:

 var payload = {
    "file": img
 };

这次修改怎么样

修改脚本: 发件人: 致: 其他信息: 例如,如果要将文本添加到文件中,请使用以下请求正文

var payload = {
  content: "sample text", // Added
  file: img
};
var params = {
  method: "post",
  payload: payload,
  muteHttpExceptions: true
};
参考:

在我的环境中,我使用这样的请求体。而且效果很好。但如果在你的环境中,它不起作用,请告诉我。我想考虑其他解决方案。

发布准确的错误代码、行号。。哪一行导致了错误等…它要么是有效负载变量定义var payload={“file”:img};或者我尝试获取导致错误的图像UrlFetchApp.fetch(link).getBlob()的方式。代码的其余部分应该是正确的,因为只要稍加修改,我就可以发送一条简单的文本消息。但上传文件是我遇到麻烦的地方。你完全搞定了。不和谐告诉我这一点让我非常困惑:只需要将contenttype从脚本中一起删除。这是一个如此简单的解决方案,我在任何地方都找不到答案。非常感谢。@Item我很高兴你的问题解决了。也谢谢你。
var params = {
  method: "post",
  payload: payload,
  muteHttpExceptions: true
};
var payload = {
  content: "sample text", // Added
  file: img
};
var params = {
  method: "post",
  payload: payload,
  muteHttpExceptions: true
};