Ce tutoriel se concentre sur vous apprendre à utiliser la langue Ruby pour envoyer un e-mail à l'aide de la classe Net :: SMTP.
Comment envoyer un e-mail simple
Avant de pouvoir envoyer un e-mail à l'aide de SMTP Lib, nous devons l'importer. Vous pouvez le faire en ajoutant la clause requise comme:
nécessitent «net / smtp»
Une fois que SMTP a été importé, nous devons ouvrir une connexion au serveur SMTP. Pour ce faire, nous utiliserons la méthode :: Démarrer. Cette méthode prend une adresse comme l'adresse du serveur SMTP et le deuxième argument une valeur comme port pour le protocole SMTP.
Le :: start fermera automatiquement la connexion une fois qu'il terminera.
nécessitent «net / smtp»
# Connexion ouverte
Net :: smtp.Start ('LocalHost', 25) do | smtp |
#…
fin
L'étape suivante consiste à composer le message, qui a les composants suivants:
Les composants d'en-tête sont la première partie de la chaîne de messagerie. Ensuite, séparez-les avec une nouvelle ligne et ajoutez le corps du message.
Enfin, fermez-le avec le bloc End_Of_Message.
Considérez l'exemple ci-dessous:
nécessitent «net / smtp»
message = << END_OF_MESSAGE
De moi
Pour vous
Sujet: le sujet par e-mail va ici
Date: Mer, 4 juil 2021 13:37:43 +0300
Message-id: 28
C'est le corps du message
End_of_message
Une fois la partie du message composée, nous pouvons utiliser la méthode Send_Message pour envoyer le message comme indiqué ci-dessous:
nécessitent «net / smtp»
message = << END_OF_MESSAGE
De moi
Pour vous
Sujet: le sujet par e-mail va ici
Date: Mer, 4 juil 2021 13:37:43 +0300
Message-id: 28
C'est le corps du message
End_of_message
Net :: smtp.Start ('LocalHost', 25) do | smtp |
smtp.Send_Message Message, 'Source @ Email.com ',' destinataire @ e-mail.com '
fin
Si vous devez spécifier les détails du serveur, tels que le nom d'utilisateur et le mot de passe, faites-le dans la méthode de démarrage comme:
Net :: smtp.Start ('LocalHost', 25, 'Mail.Domain''Username ',' Mot de passe ',: Login_method)
Dans cet exemple, nous spécifions le nom d'hôte, le nom d'utilisateur, le mot de passe et la méthode d'authentification du client. Les méthodes peuvent être claires, connectées, etc.
Pour envoyer l'e-mail à plusieurs utilisateurs, vous pouvez spécifier les adresses dans la méthode Send_Message comme:
nécessitent «net / smtp»
message = << END_OF_MESSAGE
De moi
Pour vous
Sujet: le sujet par e-mail va ici
Date: Mer, 4 juil 2021 13:37:43 +0300
Message-id: 28
C'est le corps du message
End_of_message
Net :: smtp.start ('localhost', 25, 'username', 'mot de passe' ,: login_method) do | smtp |
smtp.Send_Message Message, 'Source @ Email.com ',
'Destinataire E-mail.com ',
'deux @ destinataire.com ',
'trois @ destinataire.com ',
'Four @ destinataire.com '
fin
Et avec cela, vous pouvez envoyer un e-mail de base en utilisant la classe Ruby Net :: SMTP.
Conclusion
Ce court tutoriel vous a montré comment envoyer un e-mail de base en utilisant la classe Ruby Net :: SMTP. Considérez la documentation pour savoir comment vous pouvez développer la classe SMTP.