sendgrid给出错误sendgrid.Email不是构造函数

时间:2016-10-17 16:16:55

标签: email sendgrid

我正在使用sendgrid发送电子邮件。但是当我尝试按照以下方式创建电子邮件对象时

let email = new sendgrid.Email();
email.addTo("rhushikeshl@test.com");
email.setFrom("customercare@test.com");
email.setSubject("New Unit Added");
email.setHtml("New unit addded </br> Unit Id =" + savedUnit._id);
sendgrid.send(email, function(err, json) {
    if (err) {
        console.log("Error: " + err);
    } else {
        console.log(json);
    }
});

但它给出了错误

enter image description here

https://sendgrid.com/docs/Integrate/Code_Examples/v2_Mail/nodejs.html

2 个答案:

答案 0 :(得分:2)

试试这个 - 它对我有用......

首先安装'sendgrid-web',使用:

npm install sendgrid-web

之后,实现如下代码:

router.get('/email2',function(req,res,next){
  var Sendgrid = require("sendgrid-web");
      var sendgrid = new Sendgrid({
        user: "Your_login_username_for_Sendgrid",//provide the login credentials
        key:"Your_Api_Key_OR_password"
      });

    sendgrid.send({
    to: 'test@gmail.com',
    from: 'test@gmail.com',
    subject: 'Hello world!',
    html: '<h1>Hello world!</h1>'
  }, function (err) {
    if (err) {
      console.log(err);
      res.json({Error:'Error in sending mail'});
    } else {
      console.log("Success.");
      res.json({Success:'sucessful'});
    }
  });
})

答案 1 :(得分:1)

这应该对你有用

var helper = require('sendgrid').mail;

from_email = new helper.Email("test@example.com");
to_email = new helper.Email("test@example.com");
subject = "Sending with SendGrid is Fun";
content = new helper.Content("text/plain", "and easy to do anywhere, even with Node.js");
mail = new helper.Mail(from_email, subject, to_email, content);

var sg = require('sendgrid')(process.env.SENDGRID_API_KEY);
var request = sg.emptyRequest({
  method: 'POST',
  path: '/v3/mail/send',
  body: mail.toJSON()
});

sg.API(request, function(error, response) {
  console.log(response.statusCode);
  console.log(response.body);
  console.log(response.headers);
})

来源:https://sendgrid.com/docs/Integrate/Code_Examples/v3_Mail/nodejs.html