जैसे ही आप ऐप्स बनाते हैं, आपको अधिसूचनाओं से प्रमाणीकरण तक, और कई अन्य उद्देश्यों के लिए ईमेल भेजने की आवश्यकता होगी। गो प्रदान करता है एसएमटीपी और मेल ईमेल भेजने के लिए अपने मानक पुस्तकालय में संकुल। गो इकोसिस्टम में कई थर्ड पार्टी ईमेल पैकेज भी हैं।
बिल्ट-इन मेल पैकेज ईमेल भेजने को एक जटिल कार्य बनाते हैं। यदि आप सर्वर-साइड एप्लिकेशन डेवलपर नहीं हैं, तो आपको यह मिल सकता है एसएमटीपी और मेल संकुल का उपयोग करना और कॉन्फ़िगर करना मुश्किल है।
एक लोकप्रिय विकल्प जॉर्डन राइट का है ईमेल पैकेज जो मेल भेजने की जटिलता को समाप्त करता है। यह उन विशेषताओं को भी जोड़ता है जो आपको इसमें नहीं मिलेंगी एसएमटीपी और मेल संकुल।
ईमेल पैकेज के साथ आरंभ करना
ईमेल पैकेज एक हल्की, मजबूत और लचीली लाइब्रेरी है, जो अपनी सादगी के लिए लोकप्रिय है। कोड की केवल कुछ पंक्तियों के साथ, आप अटैचमेंट, HTML सामग्री, और बहुत कुछ के साथ एक ईमेल बना और भेज सकते हैं। यह पैकेज सुरक्षित एसएमटीपी कनेक्शन और कई प्राप्तकर्ताओं जैसी उन्नत सुविधाओं का भी समर्थन करता है, जिससे यह आपकी ईमेल आवश्यकताओं के लिए एक बहुमुखी उपकरण बन जाता है।
ईमेल पैकेज सीसी और बीसीसी क्षेत्रों, कई प्रारूपों में ईमेल पते, पठन रसीदें और कस्टम हेडर का भी समर्थन करता है।
चूंकि पैकेज गो स्टैंडर्ड लाइब्रेरी में बिल्ट-इन नहीं है, इसलिए आपको इसे इसके साथ इंस्टॉल करना होगा मिल जाना आज्ञा। ईमेल पैकेज गो संस्करण 1.15 और इसके बाद के संस्करण का समर्थन करता है।
एक नई परियोजना आरंभ करने के बाद अपने प्रोजेक्ट की निर्भरताओं में पैकेज को स्थापित करने के लिए इस आदेश को चलाएँ।
जाना github.com/jordan-wright/email प्राप्त करें
एक बार जब आप ईमेल पैकेज स्थापित कर लेते हैं, तो आप अपने स्थापना पथ से संबंधित स्थान निर्दिष्ट करके इसे आयात कर सकते हैं:
आयात (
"एफएमटी"
"github.com/jordan-wright/email"
"नेट/एसएमटीपी"
)
आप उपयोग करेंगे fmt पैकेज कंसोल पर आउटपुट प्रिंट करने के लिए और एसएमटीपी प्रमाणीकरण उद्देश्यों के लिए पैकेज।
ईमेल पैकेज के साथ मेल भेजना
आपको अपने मेल के लिए डेटा स्टोर करने के लिए चर घोषित करने होंगे। अपने ईमेल और पासवर्ड के लिए चर घोषित करें।
मेल := "आपका ईमेल"
पासवर्ड := "आपका ऐप पासवर्ड"
आप पासवर्ड को हार्डकोड कर सकते हैं या पर्यावरण चर फ़ाइल का उपयोग करें बेहतर सुरक्षा के लिए।
मेल और पासवर्ड वेरिएबल्स में क्रमशः आपका ईमेल और पासवर्ड होना चाहिए।
आपको मेल के लिए होस्ट पता और पोर्ट संख्या के लिए चर घोषित करने की आवश्यकता होगी। याहू मेल के लिए होस्ट पता और पोर्ट नंबर यहां दिए गए हैं:
होस्टपता: = "smtp.mail.yahoo.com"
होस्टपोर्ट: = "465"
इसके साथ ईमेल भेजने के लिए आपको एक नया ईमेल इंस्टेंस भी बनाना होगा ईमेल पैकेट। आप की NewEmail विधि का उपयोग कर सकते हैं ईमेल पैकेज आपके मेल के लिए एक ईमेल उदाहरण आरंभ करने के लिए:
नया ईमेल: = ईमेल। नया ईमेल()
नया ईमेल विधि एक संरचना उदाहरण देता है जिसे आप अपने ईमेल के तत्वों के लिए संशोधित कर सकते हैं।
आप उपयोग कर सकते हैं से और को आपके ईमेल उदाहरण में प्रेषक और प्राप्तकर्ता ईमेल जोड़ने के लिए संरचना के फ़ील्ड।
नया ईमेल। से = मेल
नया ईमेल। को = []डोरी{"प्राप्तकर्ताओं की सूची"}
को क्षेत्र असीमित क्षमता वाले तारों का एक टुकड़ा है जिसका उपयोग आप अपने सभी प्राप्तकर्ता पते घोषित करने के लिए कर सकते हैं।
आप जोड़ सकते हो सीसी और बीसीसी का उपयोग करके आपके ईमेल के फ़ील्ड गुप्त प्रतिलिपि और प्रतिलिपि संरचना उदाहरण के क्षेत्र:
नया ईमेल। बीसीसी = []डोरी{"बीसीसी की सूची"}
नया ईमेल। सीसी = []डोरी{"सीसी की सूची"}
मेल की सामग्री के लिए, आप का उपयोग करके अपने ईमेल का विषय और टेक्स्ट सामग्री जोड़ सकते हैं विषय और मूलपाठ संरचना के क्षेत्र। विषय एक स्ट्रिंग फ़ील्ड है, और पाठ्य सामग्री एक बाइट स्लाइस है।
नया ईमेल। विषय = "ईमेल विषय"
नया ईमेल। पाठ = []बाइट("आपके ईमेल का मुख्य भाग")
आपके द्वारा सभी आवश्यक फ़ील्ड जोड़ने के बाद, आप का उपयोग करके ईमेल भेज सकते हैं भेजना आपके ईमेल उदाहरण की विधि। भेजना विधि होस्ट पता, होस्ट पोर्ट नंबर और का एक उदाहरण लेती है एसएमटीपी पैकेज का सादा प्रमाणीकरण.
त्रुटि: = नया ईमेल। भेजना(
fmt. स्प्रिंटफ("%s:%s", होस्टएड्रेस, होस्टपोर्ट),
smtp. प्लेनऑथ("", मेल, पासवर्ड, होस्टपता)
)
अगर गलती! = शून्य {
fmt. प्रिंटलन("मेल भेजने में त्रुटि हुई")
} अन्य {
fmt. प्रिंटलन("मेल सफलतापूर्वक भेजा गया था")
}
भेजना विधि एक त्रुटि देता है जिसे आप संभाल सकते हैं या शून्य अगर कोई त्रुटि नहीं है।
आपने के साथ एक मेल सफलतापूर्वक भेज दिया है ईमेल आपको लिखने की आवश्यकता से कम पंक्तियों वाला पैकेज के साथ एक मेल भेजें एसएमटीपी पैकेट.
आप बिल्ट-इन SMTP पैकेज के साथ मेल भेज सकते हैं
गो एक सुनियोजित भाषा है क्योंकि इसके मानक पुस्तकालय में अधिकांश कार्यक्षमताओं के साथ आपको बाहरी निर्भरता या तीसरे पक्ष के पैकेज के बिना पूर्ण वेब एप्लिकेशन बनाने की आवश्यकता होगी।
एसएमटीपी पैकेज समान कार्यात्मकताओं वाली विभिन्न सेवाओं पर ईमेल भेजने के काम आता है ईमेल पैकेट।