- Trimitere Email cu Atasament

Pentru a trimite un email cu Node.js, poti folosi modulul Nodemailer, usureaza trimiterea email-urilor de pe calculatorul tau.
Iti trebuie un cont la un furnizor de servicii email, spre exemplu Gmail care este gratuit cu limita de maximum 500 email-uri pe zi.

Trimitere email cu modulul Nodemailer

1. Mai intai, instaleaza modulul Nodemailer cu NPM; in interfata command prompt:
npm install --save nodemailer
- Dupa ce ai descarcat modulul Nodemailer, poti include modulul in orice aplicatie:
const nodemailer = require('nodemailer');
2. Acum, pentru a trimite email-uri de pe server cu Node.js, scrie un cod care foloseste numele si parola inregistrate la furnizorul de servicii email.
Aici aveti un script simplu pentru a trimite email-uri cu Gmail.
- Copiaza si salveaza urmatorul cod intr-un fisier "sendmail.js" in directorul cu proiectul tau Node.js:
const nodemailer = require('nodemailer');

const trans = nodemailer.createTransport({
  service: 'gmail',
  auth: {
    user: 'youremail@gmail.com',
    pass: 'password'
  }
});

let mail_op ={
  from: 'youremail@gmail.com',
  to: 'myfriend@yahoo.com',
  subject: 'Sending Email using Node.js',
  text: 'That was easy!'
};

trans.sendMail(mail_op, (err, info)=>{
  if(err){
    console.log(err);
  } else {
    console.log('Email sent: ' + info.response);
  }
});
- Pentru a trimite mesaje cu tag-uri html, inlocuieste in "mail_op" proprietatea "text" cu "html":
let mail_op ={
  from: 'youremail@gmail.com',
  to: 'myfriend@yahoo.com',
  subject: 'Sending Email using Node.js',
  html: '<h1>Welcome</h1><p>That was easy!</p>'
}
Asta e tot! Initiaza fisierul "sendmail.js" in interfata command line si serverul tau ar trebui sa trimita email-ul prin GMail.
node test/sendmail.js

Folosire SMTP

Poti folosi de asemenea si serverul SMTP pentru a trimite email-ul:
const trans = nodemailer.createTransport({
  host: 'smtp.gmail.com', // hostname
  port: 465, // secure:true for port 465, secure:false for port 587
  secure: true, // port for secure SMTP
  auth: {
    user: 'youremail@gmail.com',
    pass: 'password'
  }
});
Daca iti returneaza o eroare ca aceasta:
Invalid login: username and password not accepted
...
responseCode: 535,
command: 'AUTH PLAIN'
Logeazate la: //www.google.com/settings/security/lesssecureapps si activati "Access for less secure apps".

Trimiterea email la mai multe adrese

Pentru a trimite un email la mai multe adrese, adaugati adresele de email, separate prin virgula, in proprietatea "to" a obiectului cu optiuni: "mail_op".
let mail_op ={
  from: 'youremail@gmail.com',
  to: 'myfriend@yahoo.com, myotherfriend@yahoo.com',
  subject: 'Sending Email using Node.js',
  html: '<h3>The life is Happiness.</h3>'
}
- De asemenea, puteti adauga proprietatile "cc" și "bcc" cu o lista de adrese de email la care sa trimiteti, si care vor aparea in campurile Cc, respectiv Bcc.

Trimitere email cu atasament

Pentru a adauga unul sau mai multe atasamente email-ului tau, adauga proprietatea "attachments" in obiectul cu mesajul transmis, care va contine cate un obiect pt. fieare atasament.
Puteti adauga un sir utf-8 ca atasament, un stream, un fisier local sau chiar si un fisier de la o adresa URL. Pentru mai multe detalii, vedeti documentatia de la:
Nodemailer - Atasamente.

- Aici aveti un exemplu de cod pentru trimitere email cu Nodemailer prin GMail, contine doua atasamente: un fisier local (file.zip) si un fisier PDF de la o adresa URL:
var nodemailer = require('nodemailer');

var trans = nodemailer.createTransport({
  service: 'gmail',
  auth: {
    user: 'youremail@gmail.com',
    pass: 'password'
  }
});

let mail_op ={
  from: 'youremail@gmail.com',
  to: 'myfriend@yahoo.com',
  subject: 'You are Blessed with Miracles',
  html: '<h1>Welcome</h1><p>Have a Happy Life with everyone and with yourself.</p>',
  attachments: [
    { //using a local file
      path: __dirname+'/file.zip'
    },
    {   //using URL as an attachment
      filename: 'art_of_believing.pdf',
      path: 'https://coursesweb.net/blog/dwl/prayer_the_art_of_believing.pdf'
    },
  ]
};

trans.sendMail(mail_op, (err, info)=>{
  if(err){
    console.log(err);
  } else {
    console.log('Email sent: ' + info.response);
  }
});

Un Test simplu in fiecare zi

HTML
CSS
JavaScript
PHP-MySQL
Engleza
Spaniola
Care tag HTML5 defineste un text marcat, evidentiat?
<mark> <embed> <span>
<p>Cursuri graruite: <mark>MarPlo.net</mark> , jocuri, anime.</p>
Ce pseudo-clasa CSS defineste un stil la element cand mouse-ul e deasupra lui?
:focus :hover :active
a:hover {
  font-weight: bold;
  color: #00da01;
}
Clic pe functia ce returneaza un sir cu un numar rotunjit la x decimale.
toPrecision(x) toFixed(x) floor(x)
var num = 12.34567;
num = num.toFixed(2);
alert(num);       // 12.35
Indicati functia PHP care adauga continutul unui fisier intr-un array.
[) file() readfile()
$arr = file("a_file.txt", FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);
var_export($arr);
Clic pe raspunsul potrivit la intrebarea: "What time is it?"
On the 7th of July 1996 It is a quarter to 5. Nice weather.
What time is it? It is a quarter to 5.
- Cat este ora? E 5 fara un sfert.
Indicati raspunsul potrivit la intrebarea: "¿Qué hora es?"
Hace buen tiempo. En el 7 de julio de 1996 Son las tres menos cuarto.
¿Qué hora es? Son las tres menos cuarto.
- Cat este ora? E 3 fara un sfert.
Node.js - Trimitere Email cu Nodemailer

Last accessed pages

  1. Scriere scripturi PHP elementare (1576)
  2. Conditional IF in Limba Engleza - Fraze Conditionale (20736)
  3. Curs PHP MySQL, Tutoriale si Scripturi PHP (6659)
  4. Espanol Chistes - Glume, Bancuri (877)
  5. Sintaxa JavaScript (2435)

Popular pages this month

  1. Gramatica limbii engleze - Prezentare Generala (2144)
  2. Prezentul simplu si continuu - Present Tense Simple and Continuous (1480)
  3. Cursuri si Tutoriale: Spaniola, Engleza, HTML, CSS, Php-Mysql, JavaScript, Ajax (1072)
  4. Trecutul simplu si continuu - Past Tense Simple and Continuous (1025)
  5. Prezent perfect si Prezent perfect continuu - Present perfect and Continuous (981)