gmail api使用html中的内容发送电子邮件

时间:2016-09-16 21:01:41

标签: javascript node.js gmail-api

我正在使用gmail api发送电子邮件。以下是我的代码

function sendEmail(auth, from, to, subject, content) {

 var encodedEmail = new Buffer(
   'From: ' + from + '\r\n' +
   'To: ' + to + '\r\n' +
   'Subject: ' + subject + '\r\n\r\n' +

   content 
 ).toString('base64').replace(/\+/g, '-').replace(/\//g, '_');

 var gmail = google.gmail('v1');
 var request = gmail.users.messages.send({
   auth: auth,
   userId: 'me',
   resource: {
     raw: encodedEmail
   }
 });
};

但是这种情况下的内容应该是纯文本/文本。问题是我想传递内容'以HTML格式。关于如何解决这个问题的任何建议?

1 个答案:

答案 0 :(得分:4)

您必须在邮件中提供content type,否则默认为plain/text,如您所述。只需添加Content-Type - 标头,其值为text/html

From: sender@gmail.com
To: receiver@gmail.com
Subject: Foo bar
Content-Type: text/html; charset=UTF-8

<b> This is the content of the email </b>