Različni primeri pošiljanja elektronske pošte
V tem delu vadnice so prikazani načini pošiljanja e-pošte s strežnikom SMTP Gmail in računom Gmail.
1. primer: pošiljanje preprostega besedilnega e-poštnega sporočila
Ustvarite datoteko Perl z naslednjim skriptom, ki pošlje preprosto besedilno e-pošto prek strežnika Gmail SMTP. V spremenljivki $username in $password morate nastaviti veljaven e-poštni naslov in geslo, ki je nastavljeno za geslo za aplikacijo. Navidezno uporabniško ime in geslo sta dodeljena v skriptu. E-poštno sporočilo ne bo poslano, če geslo za aplikacijo ni pravilno konfigurirano. Nato nastavite veljavna e-poštna naslova prejemnika in pošiljatelja na spremenljivki $to in $from, da preverite, ali je e-pošta pravilno poslana. Drugi del scenarija ostaja nespremenjen. Preprosto besedilno sporočilo je poslano na e-poštni naslov prejemnika, če je strežnik SMTP povezan in so podatki uporabnika uspešno overjeni.
#!/usr/bin/perl
#Uvoz potrebnih modulov
uporabite strogo ;
uporabite Net::SMTP::SSL ;
#Declare podprogram za pošiljanje e-pošte prek strežnika Gmail
sub sendEmail
{
#Uporabniško ime in geslo za avtentikacijo
moje uporabniško ime $ = 'uporabniškoime@gmail.com' ;
moje $geslo = 'geslo za aplikacijo' ;
#Inicializirajte spremenljivke za pošiljanje e-pošte
moj $to = 'receiver@gmail.com' ;
moj $ od = 'Meher Nigar
moj $predmet = 'To je testno e-poštno sporočilo' ;
moje $sporočilo = 'Pozdravljeni, pošiljam e-pošto z uporabo Perla.' ;
#Deklarajte spremenljivko smtp
moj $smtpServer ;
#Povežite se s strežnikom Gmail smtp
če ( ne $smtpServer = Net::SMTP::SSL- > novo ( 'smtp.gmail.com' , Pristanišče => 465 , Odpravljanje napak => 1 ) )
{
the 'Ni mogoče vzpostaviti povezave s strežnikom SMTP. \n ' ;
}
#Preverite veljavnost uporabniškega imena in gesla
$smtpServer- > avt ( $uporabniško ime , $geslo ) || the 'Napaka preverjanje pristnosti. \n ' ;
$smtpServer- > pošta ( $od. ' \n ' ) ;
$smtpServer- > do ( $do. ' \n ' ) ;
$smtpServer- > podatke ( ) ;
$smtpServer- > pošiljanje podatkov ( 'Od:' . $ od . ' \n ' ) ;
$smtpServer- > pošiljanje podatkov ( 'Za:' . $do . ' \n ' ) ;
$smtpServer- > pošiljanje podatkov ( 'Zadeva:' . $predmet. ' \n ' ) ;
$smtpServer- > pošiljanje podatkov ( ' \n ' ) ;
}
#Pokliči podprogram
&Pošlji sporočilo ( ) ;
Izhod:
Naslednje podobne informacije se prikažejo na začetku izpisa po izvedbi skripta, če je bilo e-poštno sporočilo uspešno poslano:
Ko odprete e-poštni naslov prejemnika, boste v nabiralnik prejeli naslednje e-poštno sporočilo:
Primer 2: pošiljanje e-pošte v obliki HTML
Ustvarite datoteko Perl z naslednjim skriptom, ki pošlje e-pošto v obliki HTML prek strežnika SMTP Gmail. Nastaviti morate veljaven e-poštni naslov in geslo, kot v prejšnjem primeru. Nato nastavite veljavna e-poštna naslova prejemnika in pošiljatelja. Koda HTML je dodana kot e-poštno sporočilo v skriptu. Vrsta vsebine e-pošte je nastavljena na text/html za pošiljanje e-pošte v obliki HTML. Drugi del scenarija je enak prejšnjemu primeru. E-poštno sporočilo v obliki HTML je poslano na e-poštni naslov prejemnika, če je strežnik SMTP povezan in so uporabniški podatki uspešno overjeni.
#!/usr/bin/perl#Uvoz potrebnih modulov
uporabite strogo ;
uporabite Net::SMTP::SSL ;
#Declare podprogram za pošiljanje e-pošte prek strežnika Gmail
sub sendEmail
{
#Uporabniško ime in geslo za avtentikacijo
moje uporabniško ime $ = 'uporabniškoime@gmail.com' ;
moje $geslo = 'geslo za aplikacijo' ;
#Inicializirajte spremenljivke za pošiljanje e-pošte
moj $to = 'receiver@gmail.com' ;
moj $ od = 'Meher Nigar
moj $predmet = 'Registracija zaključena' ;
moje $sporočilo = '
Dobrodošli na našem spletnem mestu
' ;#Deklarajte spremenljivko smtp
moj $smtpServer ;
#Povežite se s strežnikom Gmail smtp
če ( ne $smtpServer = Net::SMTP::SSL- > novo ( 'smtp.gmail.com' , Pristanišče => 465 , Odpravljanje napak => 1 ) )
{
the 'Ni mogoče vzpostaviti povezave s strežnikom SMTP. \n ' ;
}
#Preverite veljavnost uporabniškega imena in gesla
$smtpServer- > avt ( $uporabniško ime , $geslo ) || the 'Napaka preverjanje pristnosti. \n ' ;
$smtpServer- > pošta ( $od. ' \n ' ) ;
$smtpServer- > do ( $do. ' \n ' ) ;
$smtpServer- > podatke ( ) ;
$smtpServer- > pošiljanje podatkov ( 'Od:' . $ od . ' \n ' ) ;
$smtpServer- > pošiljanje podatkov ( 'Za:' . $do . ' \n ' ) ;
$smtpServer- > pošiljanje podatkov ( 'Zadeva:' . $predmet. ' \n ' ) ;
#Nastavite vrsto vsebine e-pošte na HTML za pošiljanje e-pošte v obliki html
$smtpServer- > pošiljanje podatkov ( 'Vrsta vsebine: besedilo/html; nabor znakov=utf-8 \n \n ' ) ;
$smtpServer- > pošiljanje podatkov ( $sporočilo. ' \n ' ) ;
$smtpServer- > konec podatkov ( ) ;
$smtpServer- > prenehati ;
}
#Pokliči podprogram
&Pošlji sporočilo ( ) ;
Izhod:
Naslednje podobne informacije se prikažejo na začetku izpisa po izvedbi skripta, če je bilo e-poštno sporočilo uspešno poslano:
Ko odprete e-poštni naslov prejemnika, boste v nabiralnik prejeli naslednje e-poštno sporočilo:
Zaključek
Metode pošiljanja e-pošte z uporabo Perla prek Gmailovega strežnika SMTP po onemogočanju »manj varne aplikacije« Gmailovega računa niso tako enostavne kot prej. Lahko pa pošljete e-pošto tako, da zdaj nastavite geslo za aplikacijo.