Как интегрировать API отправки mailjet в маршрут Node.js? - PullRequest
0 голосов
/ 08 июня 2019

Я пытался интегрировать свой транзакционный шаблон Mailjet в мой маршрут «новый контакт», чтобы отправить электронное письмо, когда новый контакт регистрируется в форме моего веб-сайта для рассылки новостей, но он по-прежнему показывает ошибку 401 при отправке формы.Электронное письмо не получено и, очевидно, не отправлено ...

Если кто-то сталкивался с этой проблемой раньше, я был бы очень признателен, если бы он мог поставить меня на правильный путь!

Большое спасибо за ваше возвращение, ребята!

Вот мои маршруты GET и POST для «контакта»:

router.get('/contact', function(req, res, next) {
 mongoose.model('contacts').find(
 function(err, contact){
  res.render('contact', {contact, isLoggedIn});
 });
});


router.post('/contact', function(req, res, next) {
var newContact = new contactModel({
contactName: req.body.contactName,
contactEmail: req.body.contactEmail,
contactPhone: req.body.contactPhone,
contactMessage: req.body.contactMessage,
contactNews: req.body.contactNews
});

newContact.save(
function(error, contact){
  mongoose.model('contacts').find(
  function(err, contact){
  req.session.contact = contact;
  res.render('index', {contact, isLoggedIn});
})
})

contactModel.find(
{
  _id: req.body._id
},

function(err, contact) {

const request = mailjet
    .post("send", {'version': 'v3.1'})
    .request({
        "Messages":[
            {
            "From": {
                "Email": "xxxx@hotmail.fr",
                "Name": "xx"
            },
            "To": [
                {
                "Email":req.body.contactEmail,
                "Name": req.body.contactName
                }
            ],
            "TemplateID": xxxx,
            "TemplateLanguage": true,
            "Subject": "xxx",
            "Variables": {}
        }
        ]
    })
request
    .then((result) => {
        console.log(result.body)
    })
    .catch((err) => {
        console.log(err.statusCode)
    })
 });
});
module.exports = router;
...