..


Enllaços patrocinats

Enviar missatges de correu electrònic amb Ruby

Article escrit per Claudio Garau

Com qualsevol bon llenguatge de programació Ruby també li permet enviar missatges de correu electrònic. Per això, no escriu tant codi, només cal anar a la intèrpret, en comptes de la llengua d'un arxiu complet de tots els paràmetres necessaris per a l'enviament.

Tot el subjacent tenim una biblioteca específica anomenada Net:: SMTP que proporciona a l'usuari amb tota la funcionalitat que vostè necessita per enviar correu electrònic amb SMTP (Simple Mail Transfer Protocol), gràcies a la xarxa de biblioteques:: SMTP serà possible crear un objecte que es pot obrir una connexió TCP (Transmission Control Protocol) per connectar-se al servidor per a l'enviament. L'objecte en qüestió és utilitzat per un mètode específic anomenat principi.

És bo aclarir que Net:: SMTP no pot enviar correu a través d'Internet, que no realitza una funció similar a la que pot ser la funció mail () d'un llenguatge de programació com PHP.
La tasca s'assembla més a la d'un client de correu perquè d'una línia de Webmail per a la correspondència.

Dit això, anem a veure una mica de codi, però aquí mostremo un programa simple que pot enviar correu electrònic basats en paràmetres definits per l'usuari:

 



 # Enviar un correu electrònic amb Ruby









 # Crida a la biblioteca per connectar amb el servidor



  



 requereix 'net / smtp'



  





 # Especifiqueu els paràmetres tant del remitent i el destinatari



  



 nome_mittente = 'El meu nom'



  



 email_mittente = 'info@miamail.it'



  



 nome_destinatario = 'El seu nom'



  



 email_destinatario = 'info@suamail.it'



  





 # Especificar els paràmetres d'autenticació al servidor



  



 host_smtp = 'smtp.provider.it'



  



 porta_smtp = 25



  



 dominio_smtp = 'provider.it'



  



 'Usuari' = utente_smtp



  



 'Password' = password_smtp



  





 # Assumpte i cos del correu electrònic



  



 subject = "Envia un correu electrònic amb Ruby '



  



 body = "Hello World!. \ n"



  





 # Pas de paràmetres a una variable



  



 message = <<END_OF_MESSAGE



  



 De: # {} nome_mittente <#} {email_mittente>



  



 Per: # {} nome_destinatario <#} {email_destinatario>



  



 Assumpte: # {assumpte}



  

  



 # {Cos}



  



 END_OF_MESSAGE



  





 # Envia el correu a través del mètode d'inici

 

  



 Net:: SMTP.start (host_smtp,

 

  



 porta_smtp,

 

  



 dominio_smtp,

 

  



 utente_smtp,

 

  



 password_smtp,: normal) fer | smtp |



  



 smtp.send_message missatge utente_smtp, email_destinatario



  





 # Tancar el bloc d'instruccions

 

  



 final

 
Per resumir el que hem vist en el codi, podem veure que la primera cosa a fer està relacionat amb la funció de biblioteca per connectar amb el servidor de correu.

En segon lloc, cal especificar les dades que el remitent i el nom del destinatari i adreça de correu electrònic d'enviament i les mateixes dades per a l'usuari que rebrà el missatge.

La connexió amb el servidor SMTP no pot fer-se sense la revelació dels paràmetres d'autenticació necessaris: el nom del servidor, el port en el qual el servidor és escoltar els missatges, el nom de domini en el servidor de correu , les credencials del remitent per utilitzar el servei (nom d'usuari i contrasenya).

Seguidament es procedeix amb una indicació de la matèria i el cos del missatge, les dades d'aquest últim es passa com a valors d'una variable que també conté les capçaleres especificat anteriorment.

Finalment, el mètode d'arrencada s'anomena la xarxa de biblioteques:: SMTP.start a través dels paràmetres d'autenticació i es connecta al servidor a través de la declaració do (literalment, "fer") permet l'enviament del missatge.

Nota com el símbol: clar que no s'especifica el tipus de missatge (no en la mateixa, llavors el format de text pla del missatge), però el mètode d'autenticació (o esquema).

Pròpiament parlant, hi ha tres mètodes d'autenticació a un servidor SMTP i Ruby suporta tots ells, són LOGIN PLAIN, i MD5 CRAM, però els paràmetres tema rigurdano relacionades amb la gestió del servidor de correu i no la mateixa Ruby, la curiositat pot seguir va aterrar a discurs d'un dels molts recursos de la xarxa en aquest sentit.

A la mateixa categoria ...
E-Learning
Ruby i Ruby on Rails (Curs) Ruby i Ruby on Rails (Curs)
Creació d'aplicacions de programari i la web amb Ruby i RoR. A partir de 39 €.
Enllaços patrocinats