我尝试使用sendgrid邮件API发送电子邮件。 一切正常。但是,我希望我的电子邮件具有特定名称。 不是发件人地址的前缀,默认情况下会出现。
我将From
值更改为&#34; MY_email_name <sender@example.com>
&#34;。但它没有用。
我已将From_Name
字段设置为&#34; MY_email_name
&#34;。那也没有用。
然而,当我没有从外部文件中读取html内容而是给出一些内联时,它正在工作。在那种情况下,它发送给我email_name。 关于如何通过阅读内容来做到这一点的任何想法。
感谢。
var sendgrid = require('sendgrid')('MY_APP_SECRET');
var fs = require('fs');
var content;
// First I want to read the file
fs.readFile(__dirname+'/email.html', function read(err, data) {
if (err) {
throw err;
}
content = data;
// Invoke the next step here however you like
//console.log(content); // Put all of the code here (not the best solution)
processFile(); // Or put the next step in a function and invoke it
});
function processFile() {
console.log(content);
}
module.exports = function sendMail(mailObject){
return new Promise(function (resolve, reject){
// create a new email instance
var email = new sendgrid.Email();
email.addTo('some1@example.com');
email.setFrom('sender@example.com');
email.setSubject('My-Email-body');
email.setFromName("Email-Name");
email.setHtml(content);
email.addHeader('X-Sent-Using', 'SendGrid-API');
email.addHeader('X-Transport', 'web');
email.setASMGroupID(835);
//send mail
sendgrid.send(email, function(err, json) {
//if something went wrong
if (err) { reject({
error:err,
res : json,
}); }
//else
resolve({
statusText: 'OK',
res : json
});
});
})
}