..


Sponsorētās saites

Sūtīt e-pastus ar Ruby

Raksts raksta Claudio Garau

Tāpat kā jebkuras labas programmēšanas valodu Ruby arī ļauj failus nosūtīt e-pasta ziņojumus. Lai to izdarītu, nav veids tik daudz kodu, dodieties uz tulks, nevis valodas pilnīga dokumentācija par visiem parametriem, kas vajadzīgi, lai nosūtīt.

Bāzes viss mums ir īpaša bibliotēka sauc Net:: SMTP, kas nodrošina lietotāju ar visām funkcionalitāti, nepieciešams nosūtīt e-pastu caur SMTP (Simple Mail Transfer Protocol), pateicoties bibliotēka Net:: SMTP būs iespējams izveidot objekts spēj atvērt TCP (Transmission Control Protocol), lai izveidotu savienojumu ar serveri un nosūtīšanu. Attiecīgais objekts tiek izmantots ar īpašu metodi, ko sauc sākums.

Ir labi, skaidrs, ka Net:: SMTP nevar nosūtīt pastu, izmantojot internetu, kas neveic funkciju, līdzīga tai, ko var mail adresi () funkcija skriptu valodu, piemēram, PHP.
Uzdevums vairāk atgādina, ka no pasta klienta, nevis Webmail korespondencei tiešsaistē.

Ka teica, paskatīsimies kādu kodu, bet šeit mostremo vienkāršu programmu, kas var sūtīt e-pastu, pamatojoties uz lietotāja noteiktiem parametriem:

 



 # Nosūtīt e-pastu ar Ruby









 # Aicina bibliotēku, lai izveidotu savienojumu ar serveri



  



 pieprasa "net / smtp"



  





 # Norādiet parametrus gan sūtītājs, gan saņēmējs



  



 nome_mittente = "Mans vārds"



  



 email_mittente = 'info@miamail.it'



  



 nome_destinatario = 'Jūsu vārdu'



  



 email_destinatario = 'info@suamail.it'



  





 # Norādiet autentifikācijas parametri serveri



  



 host_smtp = 'smtp.provider.it'



  



 porta_smtp = 25



  



 dominio_smtp = 'provider.it'



  



 utente_smtp = "lietotājs"



  



 password_smtp = "parole"



  





 # Priekšmets un struktūra e-pastu



  



 ievērojot = 'Nosūtīt e-pastu ar Ruby'



  



 ķermeņa = "Hello World. \! n"



  





 # Pass parametrus, lai mainīgo



  



 ziņu = <<END_OF_MESSAGE



  



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



  



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



  



 Temats: # {subject}



  

  



 # {Body}



  



 END_OF_MESSAGE



  





 # Sūtīt pa e-pastu starta metode

 

  



 Net:: SMTP.start (host_smtp,

 

  



 porta_smtp,

 

  



 dominio_smtp,

 

  



 utente_smtp,

 

  



 password_smtp,: plain) do | SMTP |



  



 smtp.send_message ziņu utente_smtp, email_destinatario



  





 # Close bloka instrukcijas

 

  



 beigas

 
Apkopojot to, ko mēs redzējām kodu, mēs varam redzēt, ka pirmā lieta darīt, ir aicināt uz bibliotēku, lai izveidotu savienojumu ar pasta serveri.

Otrkārt, ir nepieciešams precizēt ziņas par sūtītāju un adresātu vārdu un e-pasta adresi kuģu un pašu datus par lietotāju, kurš saņems ziņu.

Uz SMTP servera savienojuma nevar veikt bez atklāšana nepieciešamo autentifikācijas parametri: no servera hostname, osta, kurā serveris ir klausīties visus ziņojumus, domēna nosaukumu, pasta servera , mandātus sūtītāja, lai izmantotu pakalpojumu (lietotājvārds un parole).

Tā tad ieņēmumus ar norādi par tēmu un ziņojumu struktūra, tā dati tiek nodots kā vērtības mainīgais, kas satur arī iepriekš noteiktu galvenes.

Visbeidzot, sākuma metodi sauc bibliotēka Net:: SMTP.start ar autentifikāciju parametri serveri un savieno, izmantojot do paziņojumu (burtiski "darīt") ļauj nosūtīt ziņu.

Ievērojiet, kā simbols: plain nenorādāt Ziņojuma veids (nav tas pats, tad teksta formātu pastu), bet autentifikācijas metodi (vai shēmu).

Patiesību sakot ir 3 metodes, autentifikāciju, lai SMTP serveri un Ruby atbalsta tos visus, tie ir PLAIN, Jaunumi un CRAM MD5, bet parametri rigurdano tēmu, kas attiecas uz vadību pasta servera, nevis paša Ruby, ziņkārīgs joprojām var izkrauti runu ar vienu no daudziem resursiem, kas atrasti internetā, šajā sakarā.

Šajā pašā kategorijā ...
E-Learning
Ruby un Ruby on Rails (Course) Ruby un Ruby on Rails (Course)
Izveidot programmatūras un Web lietojumprogrammas ar Ruby un ROR. Sākot no € 39.
Sponsorētās saites