..


Sponsrade länkar

Skicka e-post med Ruby

Artikel skriven av Claudio Garau

Liksom alla bra programmeringsspråk Ruby kan du också skicka e-postmeddelanden. För att göra detta, inte skriver så mycket kod, bara att gå till tolken istället för språket en komplett fil av alla de parametrar som behövs för att skicka.

Bakom allt vi har ett särskilt bibliotek kallas Net:: SMTP, som ger användaren alla funktioner som krävs för att skicka e-post via SMTP (Simple Mail Transfer Protocol), tack vare biblioteket nätet:: SMTP kommer att vara möjligt att skapa en objekt kunna öppna en TCP (Transmission Control Protocol) för att ansluta till servern för att skicka. Objektet i fråga används av en specifik metod som kallas start.

Det är bra att klara att Net:: SMTP kan inte skicka post via Internet, som inte utför en funktion liknande den som kan bli mail () funktion av ett skriptspråk som PHP.
Uppgiften liknar mer som en e-postklient än ett Webmail korrespondens på nätet.

Med detta sagt, låt oss se lite kod, men här mostremo ett enkelt program som kan skicka e-post baserat på användardefinierade parametrar:

 



 # Skicka ett mail med Ruby









 # Samtal biblioteket för att ansluta till servern



  



 kräver "net / smtp"



  





 # Ange parametrarna för både avsändaren och mottagaren



  



 nome_mittente = 'Mitt namn'



  



 email_mittente = 'info@miamail.it'



  



 nome_destinatario = 'Ditt namn'



  



 email_destinatario = 'info@suamail.it'



  





 # Ange autentiseringsparametrar till servern



  



 host_smtp = 'smtp.provider.it'



  



 porta_smtp = 25



  



 dominio_smtp = 'provider.it'



  



 utente_smtp = "användare"



  



 password_smtp = 'lösenord'



  





 # Ämne och själva e-postmeddelandet



  



 Ämne = 'Skicka ett mail med Ruby'



  



 kropp = "Hello World!. \ n"



  





 # Skicka parametrar till en variabel



  



 message = <<END_OF_MESSAGE



  



 Från: # {nome_mittente} <# {} email_mittente>



  



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



  



 Ämne: # {ämne}



  

  



 # {Body}



  



 END_OF_MESSAGE



  





 # Skicka e-post via start-metoden

 

  



 Net:: SMTP.start (host_smtp,

 

  



 porta_smtp,

 

  



 dominio_smtp,

 

  



 utente_smtp,

 

  



 password_smtp,: vanligt) göra | smtp |



  



 smtp.send_message meddelande utente_smtp, email_destinatario



  





 # Stäng block av instruktioner

 

  



 slutet

 
För att sammanfatta vad vi såg i koden, kan vi se att det första du bör göra är att ringa på biblioteket för att ansluta till e-postservern.

För det andra är det nödvändigt att ange vilka uppgifter om avsändaren och mottagarens namn och e-postadress fartyg och samma uppgifter om den användare som ska få meddelandet.

Anslutningen till SMTP-servern kan inte göras utan att lämna ut de nödvändiga autentisering parametrar: värdnamnet på servern, porten som servern lyssnar efter några meddelanden, domännamn på e-postservern , bevis för avsändaren att använda tjänsten (användarnamn och lösenord).

Den fortsätter sedan med angivande av ämnet och meddelandetexten, är de sistnämnda uppgifterna skickas som värden för en variabel som även innehåller fördefinierade rubriker.

Slutligen är starten metod som kallas biblioteket nätet:: SMTP.start genom autentisering parametrar till servern och ansluter via göra uttalande (bokstavligen "göra") möjliggör sändning av meddelandet.

Lägg märke till hur symbolen: slätten inte anger vilken typ av meddelande (inte samma då oformaterad text i e-post), men autentiseringsmetod (eller schema).

Egentlig mening finns det tre metoder för autentisering till en SMTP-server och Ruby stöder dem alla, de är PLAIN, logga in och CRAM MD5, men parametrarna rigurdano tråd om förvaltningen av e-postserver och inte samma Ruby, kan nyfikna ändå landade på Tal av en av de många resurser på Internet i detta avseende.

I samma kategori ...
E-Learning
Ruby och Ruby on Rails (kurs) Ruby och Ruby on Rails (kurs)
Skapa program och webbapplikationer med Ruby och RoR. Från 39 €.
Sponsrade länkar