【问题标题】:how to send html message in gapi.client.gmail.users.messages.send如何在 gapi.client.gmail.users.messages.send 中发送 html 消息
【发布时间】:2020-09-21 06:55:25
【问题描述】:

我尝试以 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 google-api-js-client


    【解决方案1】:

    我解决了这个问题,所以将 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];
    

    【讨论】:

      猜你喜欢
      • 2014-04-30
      • 2017-04-30
      • 2020-10-15
      • 2012-08-23
      • 2015-10-16
      • 1970-01-01
      • 2014-04-26
      • 2013-07-02
      • 2016-06-12
      相关资源
      最近更新 更多