Swift पर ईमेल भेजना: iOS/macOS के लिए लाइब्रेरी और उदाहरण

शुरुआती लोगों के लिए ऑनलाइन Python प्रशिक्षक

Python आसानी से सीखें बिना सिद्धांत के बोझ के। स्वचालित जांच के साथ व्यावहारिक कार्य हल करें और ब्राउज़र में सीधे कोड लिखें।

पाठ्यक्रम शुरू करें

Swift (iOS/macOS) पर ईमेल भेजना: लाइब्रेरी और व्यावहारिक उदाहरण



ईमेल भेजना कई ऐप्स के मुख्य कार्यों में से एक है: उपयोगकर्ता पंजीकरण और पासवर्ड रीसेट से लेकर सूचनाएं और मार्केटिंग ईमेल भेजने तक। Swift (iOS/macOS) इकोसिस्टम में इस कार्य को लागू करने के कई तरीके हैं। इस लेख में, हम मुख्य लाइब्रेरी, उनकी क्षमताओं और एकीकरण के लिए तैयार कोड उदाहरण देखेंगे।



Swift पर ईमेल भेजने के मुख्य तरीके



Swift ऐप्स से ईमेल भेजने के तीन मुख्य तरीके हैं:

  • MFMailComposeViewController का उपयोग — ईमेल भेजने के लिए अंतर्निहित सिस्टम इंटरफ़ेस (केवल iOS)। उपयोगकर्ता को डिवाइस पर स्थापित मेल क्लाइंट के माध्यम से ईमेल भेजने की अनुमति देता है, लेकिन स्वचालित (सर्वर-साइड) भेजने के लिए उपयुक्त नहीं है।
  • SMTP के माध्यम से सीधा कनेक्शन — क्लाइंट साइड पर SMTP प्रोटोकॉल लागू करने वाली लाइब्रेरी (जैसे, SwiftSMTP)। बिना किसी मध्यवर्ती सर्वर के सीधे डिवाइस से ईमेल भेजने के लिए उपयुक्त है।
  • तृतीय-पक्ष सेवाओं के API का उपयोग — क्लाउड-आधारित समाधान (Mailgun, SendGrid, Amazon SES) जो REST API प्रदान करते हैं। प्रोडक्शन ऐप्स के लिए यह सबसे विश्वसनीय और स्केलेबल तरीका है।


सीधे SMTP कनेक्शन के लिए SwiftSMTP लाइब्रेरी



SwiftSMTP एक लोकप्रिय ओपन-सोर्स लाइब्रेरी है जो Swift में SMTP क्लाइंट लागू करती है। यह समर्थन करती है:

  • टेक्स्ट और HTML ईमेल भेजना
  • अटैचमेंट (चित्र, PDF, आर्काइव)
  • TLS/SSL समर्थन
  • लॉगिन/पासवर्ड द्वारा प्रमाणीकरण


Gmail SMTP के माध्यम से एक साधारण ईमेल भेजने का उदाहरण:



import SwiftSMTP

let smtp = SMTP( host: "smtp.gmail.com", // SMTP-सर्वर port: 587, // TLS के लिए पोर्ट username: "you@gmail.com", password: "your-app-password")

let mail = Mail( from: Mail.User(name: "प्रेषक", email: "you@gmail.com"), to: [Mail.User(name: "प्राप्तकर्ता", email: "recipient@example.com")], subject: "Swift से नमस्ते!", text: "यह SwiftSMTP का उपयोग करके भेजा गया एक परीक्षण ईमेल है।")

smtp.send(mail) { error in if let error = error { print("भेजने में त्रुटि: \\(error)") } else { print("ईमेल सफलतापूर्वक भेजा गया!") }}


Gmail के साथ काम करने के लिए ऐप पासवर्ड (App Password) की आवश्यकता होगी, क्योंकि दो-कारक प्रमाणीकरण चालू होने पर सामान्य पासवर्ड काम नहीं करता है।



Mailgun (API) के माध्यम से ईमेल भेजना



Mailgun ट्रांजेक्शनल ईमेल भेजने के लिए सबसे लोकप्रिय सेवाओं में से एक है। यह एक सरल REST API और Swift के लिए SDK प्रदान करता है। मुख्य लाभ:

  • उच्च डिलीवरेबिलिटी (IP पतों की प्रतिष्ठा के कारण)
  • खोलने और क्लिक करने पर नज़र रखना
  • टेम्पलेट्स के लिए समर्थन


URLSession का उपयोग करके Mailgun API के माध्यम से ईमेल भेजने का उदाहरण:



import Foundation

func sendEmailViaMailgun(to recipient: String, subject: String, body: String) { let apiKey = "YOUR_MAILGUN_API_KEY" let domain = "YOUR_DOMAIN.mailgun.org" let urlString = "https://api.mailgun.net/v3/\\(domain)/messages" guard let url = URL(string: urlString) else { return } var request = URLRequest(url: url) request.httpMethod = "POST" let credentials = "api:\\(apiKey)" let authData = credentials.data(using: .utf8)!.base64EncodedString() request.setValue("Basic \\(authData)", forHTTPHeaderField: "Authorization") request.setValue("application/x-www-form-urlencoded", forHTTPHeaderField: "Content-Type") let parameters = [ "from": "My App <noreply@\\(domain)>", "to": recipient, "subject": subject, "text": body ] let bodyString = parameters

अनुशंसाएँ