如何在gapi.client.gmail.users.messages.send中发送html消息

问题描述 投票:1回答:1

[我尝试发送HTML字符串作为样式,以便在gapi.client.gmail.users.messages.send API中设置我的消息的样式,但是确实可以工作。是否可以为此API发送html消息?

sendEmail(res, emailList?) {
   //method one:
    let message = document.createElement('div');
    message.innerHTML = '<label style="color:red">Hello world<label>';

   //method two: 
    message = $('<label style="color:red">Hello world<label>');

    let mimeData: any = [
      "Subject: =?utf-8?B?" + window.btoa(unescape(encodeURIComponent(this.emailObject.subject))) + "?=",
      "MIME-Version: 1.0",
      "Content-Type: text/plain; charset=UTF-8",
      "Content-Transfer-Encoding: 7bit",
      "",
      "" + message];
    mimeData = dest.concat(mimeData).join("\n").trim();
    const raw = window.btoa(unescape(encodeURIComponent(mimeData))).replace(/\+/g, '-').replace(/\//g, '_');
    gapi.client.gmail.users.messages.send({
      'userId': 'me',
      'resource': {
        'raw': raw
      }
    }).execute(res => {
      console.log('Email sent result', res);
    });
  }
javascript angular gmail-api google-api-client gapi
1个回答
0
投票

我解决了这个问题,因此将content-type更改为text / html会起作用。

message = '<label style="color:red">Hello world<label>';
  let mimeData: any = [
      "Subject: =?utf-8?B?" + window.btoa(unescape(encodeURIComponent(this.emailObject.subject))) + "?=",
      "MIME-Version: 1.0",
      "Content-Type: text/html; charset=UTF-8",
      "Content-Transfer-Encoding: 7bit",
      "",
      "" + message];
© www.soinside.com 2019 - 2024. All rights reserved.