使用 Google Apps 脚本发送电子邮件 - Gmail API

时间:2021-02-05 16:06:47

标签: google-apps-script gmail-api

我正在尝试从 Mogsdad 提供的解决方案中创建“原始”参数 here

我来到了下面的解决方案

/**
 * Send a raw RFC 2822 formatted and base64url encoded email
 * using the Advanced Gmail service.
 *
 * From http://stackoverflow.com/a/35073785/1677912
 *
 * @param {String}  raw  RFC 2822 formatted and base64url encoded message
 *
 * @returns {String}     Message ID of the message (now in Sent Messages).
 */
function sendRawMessage( raw ) {
  var message = Gmail.newMessage();
  message.raw = raw;
  var sentMsg = Gmail.Users.Messages.send(message, 'me');
  return sentMsg.id;
}

function rawMessage(){

  const messageBody = `
  this is a test message
  `;

  var raw = (
  "From: foo@gmail.com\r\n" +
  "To: foo@gmail.com\r\n" +
  "Subject: Subject Text\r\n\r\n" +

  messageBody
);

var encodedMsg = Utilities.base64Encode(raw).replace(/=+$/, ''); //the replace removes the equals after
var myId = sendRawMessage( encodedMsg );
  Logger.log(myId);
}

但是,当我运行该函数时,出现以下错误,而且我似乎无法弄清楚意外的令牌是什么。

API call to gmail.users.messages.send failed with error: Invalid JSON payload received. Unexpected token.

我的最终目标是能够通过 Gmail API 发送电子邮件,但不必“...直接使用 Web API”。

0 个答案:

没有答案
相关问题