πρόλογος
Γνωρίζουμε ότι το τρέχον .NET Core δεν υποστηρίζει το πρωτόκολλο SMTP, όταν χρησιμοποιώ τη λειτουργία αποστολής του email, πρέπει να χρησιμοποιήσω ορισμένα στοιχεία τρίτων για να επιτύχω τον σκοπό, σήμερα θα σας παρουσιάσω δύο στοιχεία αποστολής email ανοιχτού κώδικα, είναι το MailKit και το FluentEmail, θα τα παρουσιάσω αντίστοιχα.
Κιτ αλληλογραφίας
Στο ASP.NET Core, μπορείτε να χρησιμοποιήσετε το MailKit για να στείλετε μηνύματα, υποστηρίζει πρωτόκολλα πολλαπλών πλατφορμών, IMAP, POP3, SMTP και άλλα πρωτόκολλα.
Μπορείτε να το εγκαταστήσετε χρησιμοποιώντας τις ακόλουθες μεθόδους:
Ακολουθεί ένα απλό παράδειγμα αποστολής email:
Αν το κύριο περιεχόμενο που θέλετε να στείλετε είναι HTML, μπορείτε να χρησιμοποιήσετε τα εξής:
Το Fluent Email είναι επίσης ένα έργο ανοιχτού κώδικα, μπορείτε να χρησιμοποιήσετε πρότυπα Razor για να στείλετε μηνύματα ηλεκτρονικού ταχυδρομείου και μπορείτε να ενσωματωθείτε με ορισμένους αποστολείς email τρίτων, όπως το Mailgun, αλλά αυτό το πακέτο υποστηρίζει μόνο SMTP στο .NET 4.6. Μπορείτε να το εγκαταστήσετε χρησιμοποιώντας την ακόλουθη εντολή:
Μπορείτε να στείλετε ένα email χρησιμοποιώντας τις πιο βασικές μεθόδους, τόσο απλές όσο αυτή:
Εναλλακτικά, μπορείτε να χρησιμοποιήσετε ένα πρότυπο Razor για να στείλετε:
Το Email.DefaultRenderer λέει στο FulentEmail ποιο πρόγραμμα απόδοσης να χρησιμοποιήσει (μπορείτε επίσης να εφαρμόσετε το δικό σας), στη συνέχεια παρέχει ένα πρότυπο προτύπου με το περιεχόμενο της συμβολοσειράς προτύπου της σύνταξης Razor και, στη συνέχεια, χρησιμοποιεί το UsingTemplate για την απόδοση της απόδοσης.
Πρότυπο CSHTML στο δίσκο
Εάν το αρχείο προτύπου Razor είναι μεγάλο και δεν είναι κομψό στη χρήση συμβολοσειρών, τότε μπορείτε να τοποθετήσετε το αρχείο προτύπου στο δίσκο και να το φορτώσετε ως εξής:
Στείλτε μηνύματα με το Mailgun
Μερικοί άνθρωποι μπορεί να μην γνωρίζουν πολλά για το Mailgun, η Mailgun είναι μια ξένη εταιρεία παροχής υπηρεσιών αλληλογραφίας, όπως η περίφημη υπηρεσία email Github φιλοξενείται σε αυτήν και ο δωρεάν λογαριασμός Maingun μπορεί να στέλνει 10,000 email το μήνα, κάτι που είναι αρκετό για πολλούς μικρούς και μεσαίους ιστότοπους.
Όταν χρησιμοποιείτε το Mailgun για την αποστολή μηνυμάτων ηλεκτρονικού ταχυδρομείου, πρέπει πρώτα να καταχωρήσετε έναν λογαριασμό και, στη συνέχεια, μπορείτε να χρησιμοποιήσετε το Rest API που παρέχεται από το Mailgun για να διαχειριστείτε τα μηνύματα ηλεκτρονικού ταχυδρομείου που στέλνετε ή λαμβάνετε. Το Mailgun με ενσωμάτωση FluentEmail χρειάζεται μόνο να προσθέσει πακέτα όπως αυτό:
Μετά την εγγραφή του Mailgun, θα σας εκχωρηθεί ένα κλειδί API και ένα όνομα τομέα δεύτερου επιπέδου και θα πρέπει να το διαμορφώσετε ως εξής:
περίληψη
Από τα παραπάνω παραδείγματα, μπορούμε να δούμε ότι το MailKit και το FluentEmail έχουν τα δικά τους πλεονεκτήματα και μειονεκτήματα. Το πλεονέκτημα του MailKit είναι ότι υποστηρίζει πολλά πρωτόκολλα και είναι cross-platform, αλλά το μειονέκτημα είναι ότι δεν παρέχει υποστήριξη για το Razor και εάν χρησιμοποιείτε το Mailgun, πρέπει να το ενσωματώσετε μόνοι σας. Το πλεονέκτημα του FlentEmail είναι ότι παρέχει υποστήριξη για πρότυπα Razor και ενσωματώνει το Mailgun, αλλά το μειονέκτημα είναι ότι το πρωτόκολλο SMTP δεν παρέχει ακόμη υποστήριξη για .NET Core.
Συνοπτικά, εάν χρησιμοποιείτε το Mailgun για την αποστολή μηνυμάτων ηλεκτρονικού ταχυδρομείου, τότε το FluentEmail είναι η επιλογή που πρέπει να επιλέξετε και εάν θέλετε να χρησιμοποιήσετε το πρωτόκολλο SMTP για να συνδεθείτε με τον διακομιστή αλληλογραφίας σας για να στείλετε μηνύματα ηλεκτρονικού ταχυδρομείου, τότε θα πρέπει να χρησιμοποιήσετε το MailKit.
|