Recent am început prima mea programare node.js. Cu toate acestea, am descoperit că eu sunt în imposibilitatea de a crea o persoană de contact-mi formular care trimite direct la e-mail meu deoarece nu pot't găsi orice module de nodul care este capabil de a trimite e-mailuri.
Stie cineva de un node.js e-mail bibliotecă sau un eșantion de contact form script?
Nodemailer este de fapt un modul care vă oferă posibilitatea de a trimite cu ușurință e-mailuri atunci când programare în Node.js. Există câteva exemple de cum să folosiți Nodemailer la modul http://www.nodemailer.com/. Instrucțiuni complete despre cum să instalați și să utilizați funcțiile de bază ale Nodemailer este inclus în acest link.
Eu personal am avut probleme la instalarea Nodemailer folosind npm, așa că am descărcat sursa. Există instrucțiuni pentru ambele npm instala și de a descărca sursa.
Aceasta este o foarte simplu modul de a utiliza și mi-ar recomanda pentru oricine care doresc pentru a trimite e-mailuri folosind Node.js. Mult noroc!
nod-e-mail-template-uri este o opțiune mult mai bună: https://github.com/niftylettuce/node-email-templates
acesta are suport pentru windows, precum și
Check out emailjs
După ce pierzi o mulțime de timp pe încercarea de a face nodemailer lucra cu atașamente mari, găsit emailjs și fericit de atunci.
Se acceptă trimiterea de fișiere prin utilizarea normală obiecte de Fișier, și nu de uriașe Rezerve ca nodemailer necesită. Înseamnă că te poți conecta la, f.e., formidabil pentru a trece atașamentele dintr-un formular html mailer. Acesta susține, de asemenea, de așteptare..
Toate în toate, nici o idee de ce nodejitsu ppl ales nodemailer la bază versiunea lor pe, emailjs este doar mult mai avansate.
Codul complet pentru a trimite e-Mail Folosind nodemailer Module
var mailer = require("nodemailer");
// Use Smtp Protocol to send Email
var smtpTransport = mailer.createTransport("SMTP",{
service: "Gmail",
auth: {
user: "[email protected]",
pass: "gmail_password"
}
});
var mail = {
from: "Yashwant Chavan <[email protected]>",
to: "[email protected]",
subject: "Send Email Using Node.js",
text: "Node.js New world for me",
html: "<b>Node.js New world for me</b>"
}
smtpTransport.sendMail(mail, function(error, response){
if(error){
console.log(error);
}else{
console.log("Message sent: " + response.message);
}
smtpTransport.close();
});
@JimBastard's a acceptat răspunsul pare a fi datat, m-am uitat și că mailer lib n't a fost atins în peste 7 luni, are mai multe bug-uri enumerate, și nu mai este înregistrată în npm.
nodemailer pare a fi cea mai bună opțiune, cu toate acestea url-ul furnizat în alte raspunsuri de pe acest thread sunt toate 404'ing.
nodemailer pretinde pentru a sprijini ușor de plugin-uri în gmail, hotmail, etc. și are, de asemenea, foarte frumos de documentare.
Ai putea folosi întotdeauna AlphaMail (divulgare: am'm unul dintre dezvoltatorii din spatele ei).
Trebuie doar să instalați cu MNP:
npm install alphamail
Înregistrează-te pentru un AlphaMail cont. Obține un token, și apoi puteți începe să trimiteți cu AlphaMail serviciu.
var alphamail = require('alphamail');
var emailService = new alphamail.EmailService()
.setServiceUrl('http://api.amail.io/v1/')
.setApiToken('YOUR-ACCOUNT-API-TOKEN-HERE');
var person = {
id: 1234,
userName: "jdoe75",
name: {
first: "John",
last: "Doe"
},
dateOfBirth: 1975
};
emailService.queue(new alphamail.EmailMessagePayload()
.setProjectId(12345) // ID of your AlphaMail project (determines template, options, etc)
.setSender(new alphamail.EmailContact("Sender Company Name", "[email protected]"))
.setReceiver(new alphamail.EmailContact("John Doe", "[email protected]"))
.setBodyObject(person) // Any serializable object
);
Și în AlphaMail GUI (tabloul de Bord) ai'll fi capabil de a edita șablonul cu datele trimise:
<html>
<body>
<b>Name:</b> <# payload.name.last " " payload.name.first #><br>
<b>Date of Birth:</b> <# payload.dateOfBirth #><br>
<# if (payload.id != null) { #>
<a href="http://company.com/sign-up">Sign Up Free!</a>
<# } else { #>
<a href="http://company.com/login?username=<# urlencode(payload.userName) #>">Sign In</a>
<# } #>
</body>
</html>
Template-uri sunt scrise în Comlang, l's un model simplu, un limbaj proiectat special pentru e-mailuri.
Femei Mature, simplu de utilizat și are o mulțime de caracteristici în cazul simplu nu - 't suficienta: Nodemailer: https://github.com/andris9/nodemailer (notă url-ul corect!)
Nodemailer Modulul este cel mai simplu mod de a trimite e-mailuri în node.js.
Încercați această probă exemplu de formular: http://www.tutorialindustry.com/nodejs-mail-tutorial-using-nodemailer-module
Informatii suplimentare: http://www.nodemailer.com/
npm are câteva pachete, dar nici unul nu a ajuns la 1.0 încă. Cele mai bune ponturi de la npm lista de e-mail`:
campanie este o soluție completă pentru trimiterea de e-mailuri în Nod, și vine cu un API simplu.
Ai exemplu de genul asta.
var client = require('campaign')({
from: '[email protected]'
});
Pentru a trimite e-mailuri, puteți utiliza Mandril, care este gratuit și minunat. Doar set de API-cheie, astfel:
process.env.MANDRILL_APIKEY = '<your api key>';
(dacă doriți să trimiteți e-mailuri folosind un alt furnizor, verifica documente)
Apoi, atunci când doriți să trimiteți un e-mail, o poți face astfel:
client.sendString('<p>{{something}}</p>', {
to: ['[email protected]', '[email protected]'],
subject: 'Some Subject',
preview': 'The first line',
something: 'this is what replaces that thing in the template'
}, done);
Repo GitHub a destul de vastă documentație.