..
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ā.
| |
Ruby un Ruby on Rails (Course)
Izveidot programmatūras un Web lietojumprogrammas ar Ruby un ROR. Sākot no € 39. |