Опитвам се да добавя формуляр за контакт с mailgun към моя уебсайт, като използвам nodejs express и mailgun-js. Но някак си не мога да го накарам да работи. Моят API ключ и домейн са добри, тъй като ги тествах с примерния код на официалната страница на mailgun-js в github. Така че се чудя дали има нещо нередно със следните части от кода. (маршрутизирането и всичко останало работи перфектно)
./models/mailer.js
var api_key = 'xxxxxxx';
var domain = 'xxxxxxxx';
var Mailgun = require('mailgun-js');
exports.sendOne = function (locals,callback) {
console.log(locals);
var mailgun = new Mailgun({apiKey: api_key,domain:domain});
var data = {
from: 'xxxxxx',
to: '[email protected]',
subject: 'Hello World',
text: 'Testing some Mailgun awesomness!'
};
mailgun.message().send(data,function (err,body) {
if(err) return callback(err);
console.log('message sent');
callback(null,body);
});
};
./controllers/contactCtrl.js
var mailer = require('../models/mailer');
exports.contact = function (req,res,next) {
res.render('contact');
};
exports.receiveMessage = function (req,res,next) {
mailer.sendOne(req.body,function (err,body) {
if(err) return next(err);
console.log(body);
res.send({message:'Your message has been successfully sent'});
});
};
Благодаря много :)