Изображение кэша Google Script CacheService для inlineImages в sendMail

Я хотел бы сохранить изображение в Cacheservice скрипта Google, а затем вставить это изображение в виде встроенного изображения в сообщение HTML.

Я пытался заставить его работать, но пока безуспешно. Ошибка кода ниже в Logger: «Недопустимый аргумент: вложения». Если я проверяю, это показывает, что значок var в sendMail () является BLOB-объектом:

function onOpen(e){
  var icon = DriveApp.getFileById('ID').getBlob().setName('icon');
  var cache = CacheService.getDocumentCache().put('icon', icon);
  }

function sendMail() {

  var icon = CacheService.getDocumentCache().get('icon');

  var email = '[email protected]';
  var subject = 'test';
  var txt = 'test';
  var html = '<img src="cid:icon"/>';

   MailApp.sendEmail(email, subject, txt, {htmlBody: html, name : 'test', inlineImages:{icon:icon}});

}

Удивительно, если я сделаю это:

 function sendMail() {

      var icon = DriveApp.getFileById('ID').getBlob().setName('icon');

      var email = '[email protected]';
      var subject = 'test';
      var txt = 'test';
      var html = '<img src="cid:icon"/>';

       MailApp.sendEmail(email, subject, txt, {htmlBody: html, name : 'test', inlineImages:{icon:icon}});

    }

это работает отлично. В чем проблема с моим кодом?

Ответы на вопрос(1)

Ваш ответ на вопрос